博客园首页的AJAX翻页竟然能在源码中看到翻页后的内容!这是为什么?望高手解答!
时间:2010-08-27 来源:豆浆咖啡
首先是希望大家表喷我,我也知道这篇文章不能放到首页精华区里面,但是这是个很特别的问题,我觉得很多人都有我这样的问题把!
博客园牛人又多,我想只有这样才能得到高手们的解答,再次谢过!
我之所以会问这样的问题是,是我最近在做一个asp.net webform程序,我刚学没多久,可以说初出茅庐(大家体谅下,很多不懂,希望大家解答)
我先用UpdatePanel做ajax分页,发现达不到我的期望的目标,于是改成JQuery+json+ash做,虽然做出来了,但是问题出现了,就是查看浏览器的源代码,发现
源代码没有改变还是原先的源代码,我也知道JQuery做的不会修改源代码,firefox和chrome安装了插件后可以看到我也知道!
但是这样缺点就暴漏出来了,就是搜索引擎无法收录到里面的内容!后来我也放弃了,今天看了下博客园的源代码,发现源代码里面尽然被修改了!
上文可以忽略,如果有耐心就看看看(再次谢过),下文是重点!
博客园的翻页代码是<a href="http://www.cnblogs.com/page2" onclick="UpateSiteHomePosts(1,2,20);return false;">2</a>
我看了下觉得非常人性化,在有JavaScript的浏览器的电脑里面就能用ajax翻页了,不支持JavaScript或者禁用的JavaScript的浏览器的电脑
就直接打开链接!
----------------------------------------
根据源代码我找到了下site.js这个文件
Function UpateSiteHomePosts(siteCategoryType,pageIndex,pageSize)
{window.scrollTo(0,0);
$("#nav_tab_"+siteCategoryType).attr("class","current_nav");
$("#nav_tab_"+(3-siteCategoryType)).removeAttr("class");$("#nav_tab_3").removeAttr("class");
$("#posts_refresh").hide();$("#headline_block").html('');$("#posts_refresh_tips").css("color","green");
$("#posts_refresh_tips").html("更新中...");GetHeadline();ShowProgress();
$.ajax({url:'/ws/BlogPost.asmx/GetSiteHomePosts',
data:'{siteCategoryType:'+siteCategoryType+',pageIndex:'+pageIndex+',pageSize:'+pageSize+'}',
type:'post',dataType:'json',contentType:'application/json; charset=utf8',
success:function(data){var startDate=new Date();
document.getElementById("post_list").innerHTML=data.d;$("#posts_refresh_tips").html("");
$("#posts_refresh").show();},error:function(xhr){$("#post_list").html("更新数据失败!请重试!");}});
var urlFormat;if(siteCategoryType==2){urlFormat='/candidate/page{0}';} else{urlFormat='/page{0}';}
success:function(data){var startDate=new Date();
document.getElementById("post_list").innerHTML=data.d;$("#posts_refresh_tips").html("");
同样也是用JQuery+json,为什么他的能显示呢?高手解答下吧。。。。实在想不透
已经了解了,留言里面有答案,已经撤下了不在首页了!