最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

html中通过JS获取JSON数据并加载的方法

来源:懂视网 责编:小采 时间:2020-11-27 22:24:32
文档

html中通过JS获取JSON数据并加载的方法

html中通过JS获取JSON数据并加载的方法:在写内容逻辑重复性的页面时,用json数据可以显著提高编程效率,并且便于后期的数据维护。因此,在视频专题页面,需要展示多列视频数据,我选择了用json。 HTML如下(只展示重点部分,需要引用JQ) <div class=container-fluid conten
推荐度:
导读html中通过JS获取JSON数据并加载的方法:在写内容逻辑重复性的页面时,用json数据可以显著提高编程效率,并且便于后期的数据维护。因此,在视频专题页面,需要展示多列视频数据,我选择了用json。 HTML如下(只展示重点部分,需要引用JQ) <div class=container-fluid conten

在写内容逻辑重复性的页面时,用json数据可以显著提高编程效率,并且便于后期的数据维护。因此,在视频专题页面,需要展示多列视频数据,我选择了用json。

HTML如下(只展示重点部分,需要引用JQ)

<div class="container-fluid content ">
 <div class="container neirong">
 <div class="left fl">
 <div class="title">
 热门视频
 </div>
 <div class="medialist">
 </div>
 </div></div>
</div>

JS如下

<script>
 $(document).ready(function(){
 
 console.log(1111)
 
 $.getJSON('data.json',function(data){
 
 console.log(222)
 
 
 
 var mediahtml="";
 
 $.each(data,function(i,data) {
 
 
 
 mediahtml+='<div class="media">'+
 '<div class="media-left">'+
 '<a data-toggle="modal" data-target="#myModal">'+
 '<img class="media-object" src="'+data["imgsrc"]+
 '" alt="">'+
 '</a>'+'</div>'+
 '<div class="media-body">'+
 '<div class="title">'+
 '<span class="classify">'+
 data["classify"]+
 '</span>'+
 '<span class="titlename media-heading">'+
 data['titlename']+
 '</span>'+
 '</div>'+
 '<span class="time">'+
 '<span class="glyphicon glyphicon-time"></span> '+
 '<span>'+data['pubdate']+'</span>'+
 '<p>'+data["intro"]+'</p>'+
 '<div class="guest">'+
 '<span class="jia">嘉</span>'+
 '<span class="name">'+data["name"]+'</span>'+
 '<span class="position">'+data["position"]+'</span>'+
 '<span class="glyphicon glyphicon-eye-open"></span>'+
 '<span class="click-rite"></span>'+
 '</div>'+
 '</div>'+
 
 '<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">'+
 '<div class="modal-dialog" role="document">'+
 '<div class="modal-content">'+
 '<div class="modal-header">'+
 '<button type="button" class="close" data-dismiss="modal" aria-label="Close">'+
 '<span aria-hidden="true">×</span>'+
 '</button>'+
 '</div>'+
 '<div class="modal-body"></div>'+
 '</div>'+
 '</div>'+
 '</div>'

 
 
 
// var url_mobi=data.url_mobi;
// var url_pc=data.url_pc;
// if ((navigator.userAgent.match(/(iPhone|iPod|Android|ios|iOS|iPad|Backerry|WebOS|Symbian|Windows Phone|Phone)/i))) {
// $('.modal-body').prepend(url_mobi);
// }else{
// $('.modal-body').prepend(url_pc);
// }
// 
// 
 })
 
 $('.medialist').after(mediahtml); 
 
 
 })
 
 
 })
 


 $('#myModal').on('shown.bs.modal', function (e) {
 // 关键代码,如没将modal设置为 block,则$modala_dialog.height() 为零 
 $(this).css('display', 'block');
 var modalHeight = $(window).height() / 2 - $('#myModal .modal-dialog').height() / 2;
 $(this).find('.modal-dialog').css({
 'margin-top': modalHeight
 });
 });


 //点击预览图时判断
// $('.modal').on('click', function () {
// if ($('#myModal').css("display") == "none") {
// $('.modal-body').children('iframe').attr('src', '');
// } else {
// $('.modal-body').children('iframe').attr('src',
// 'https://v.qq.com/iframe/player.html?vid=v0508nqkm75&tiny=0&auto=0');
// }
// })
 
 </script>
 

注释部分可不看,不影响内容。

首先要新建json文件,json文件需注意的问题是:json对数据格式有要求,不识别url中的各类符号,因此会提示错误,如果不修复,则会阻断JS进程,造成数据在页面不显示,这个问题我找了好久才发现,而且json问题在js中不会报错。解决办法是利用encode方法,格式化url,然后再添加进json即可,在html中应该还要用decode转回来。

第二个坑是插入html到某个标签中,有四个方法,用after就可以实现,不要用反了。

第三点是需要注意,不要在拼接字符串的时候忘掉加号,少一个就会出问题,一个小问题会找好久才发现,而且拼接错误JS不会报错,很难发现。

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

html中通过JS获取JSON数据并加载的方法

html中通过JS获取JSON数据并加载的方法:在写内容逻辑重复性的页面时,用json数据可以显著提高编程效率,并且便于后期的数据维护。因此,在视频专题页面,需要展示多列视频数据,我选择了用json。 HTML如下(只展示重点部分,需要引用JQ) <div class=container-fluid conten
推荐度:
标签: 数据 js html
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top