首先你要通过接口在当前页面获取到相关的数据,等你点击了按钮跳转之后在bb页面再把数据渲染出来
一般就是这样:
$(function(){
var pag = '获取到的数据';
$('box')html(pag);
})
我建议这样子:保留已经实现的,另外再加个显示内容的页面即可。
首先,生成这个文章列表,href 也是实际文章链接,点击链接会打开页面显示文章内容。
然后,添加 JS 代码,绑定事件处理函数,ajax 请求的 url 可以直接获取链接的 href,如
文章列表页面 newsphp
<a href="news_itemphpid=1" target="_blank" class="news-title">文章标题1</a><a href="news_itemphpid=2" class="news-title">文章标题2</a>
<script>
// 假设使用 jQuery
$(documentbody)on( 'click', 'news-title', function(){
// 通过 ajax 获取文章内容并显示
// 直接将 a 的链接作为请求的 url。
var $this = $(this), url = $thisattr('href');
$ajax({
url: url // 当然,可以对 url 进行处理,根据自己需要进行构建
// code
});
return false; // 禁止链接的默认行为,对于浏览者而言,不会另外打开页面了
});
</script>
另外应该还需要一个显示内容的页面 news_itemphp
对于通过浏览器来浏览页面的用户而言,他点击文章标题不会另外打开页面看内容,而是会通过 ajax 的方式获取文章内容显示在页面右侧,即他会一直在 newsphp 页面
对于搜索引擎而言,打开 newsphp,它不会执行 js,而是解析出一个个文章链接后,会去爬这些文章的页面(news_itemphp),这样子,文章内容就可以被收录了。
最后,分页的链接也要处理下。处理的方式是类似的,如:
文章列表页面 newsphp
<a href="newsphppaged=1" class="page">1</a><a href="newsphppaged=2" class="page">2</a>
<a href="newsphppaged=3" class="page">3</a>
<script>
$(documentbody)on( 'click', 'page', function(){
var $this = $(this), url = $thisattr('href');
$ajax({
url: url,
success: function() {
// 列表的刷新
// 页码栏的刷新
}
});
return false;
});
</script>
对于搜索引擎而言,它会一个个爬过来 newsphppage=1, newsphppage=2, 等等。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)