//在HTML文档加载完成立即执行该函数将触发DOMContentLoaded事件,而不需要等待样式表,图像和子框架页面加载(事件可以用来检测HTML页面是否完全加载完毕(fully-loaded))。
window.addEventListener(‘DOMContentLoaded’,function(evt){
//获取blogs的所有文章id
var blogs=document.getElementsByClassName("blogs");
var ids="";
for(var i=0;i<blogs.length;i++){
ids+=blogs[i].getAttribute("aid")+",";
}
//ajax开始
$.ajax(
{
url:'http://'+document.domain+'/xy',
data:{ids:ids},
type:'get',
cache:false,
dataType:'json',
success:function(data){
if(data.msg){
console.log(data);
for(var x=0;x<data.data.length;x++){
//外层循环得到文章id
var id=data.data[x].id;
for(var y=0;y<blogs.length;y++){
var blog=blogs[y];
var blogId=blog.getAttribute("aid");
//与外层循环得到的文章id比较,如果是同一个id则将当前浏览量赋值给它
if(id==blogId){
//子元素结构:ul(0) p(1) span(2) viewnum f_r(2) a(0)
var a=blog.getElementsByTagName("ul")[0].getElementsByTagName("p")[1].getElementsByTagName("span")[2].getElementsByTagName("a")[0];
a.innerHTML=data.data[x].chengXiaoGua;
break;
}
}
}
}
else{alert("浏览量获取失败"); console.log(data); }
},
error:function(XMLHttpRequest, textStatus, errorThrown){alert("浏览量获取失败后端发生错误:"+errorThrown);console.log(XMLHttpRequest.responseText);}
});
//ajax结束
},false);
</script>
<ul>
<h3><a href="{$v['url']}" target="_blank" title="{$v['title']}">文章id:{$v['id']}------{$v['title']}</a></h3>
<p>{str_cut($v['description'], 200)}</p>
<p class="autor">
<span class="lm f_l">[<a href="{$CATEGORY[$v[$catid]]['url']} ">{$CATEGORYS[$v[catid]][catname]}</a>]</span>
<span class="dtime f_l">{date('Y-m-d H:i:s', $v['inputtime'])} </span>
<span class="viewnum f_r">浏览(<a href="{$v['url']}">{$views}</a>)</span>
<span class="pingl f_r">作者:{$v['username']}</span>
</p>
</ul>