一个良好的开端动画,Ajax和JavaScript是使用图书馆一样jQuery。您仍然可以使用带有真正网址的菜单,这些网址适用于搜索引擎优化原因的正确网址。但是当用户按下该按钮时,Javascript将取消真正的请求并使用Ajax调用来获取内容。使用jQuery的小例子:
这样,您仍然可以使用原始导航但取消pagechange。这将在文档准备好时被调用,并且将被绑定到#menu li a
的click
事件。如果你想有一个固定高度的内容,你可以把你的CSS作为#content
如下:
#content
{
height: 600px;
overflow: auto; /* Makes scrollbar when needed */
}
如果你想在滑动并滑出你的内容。你必须得到一个DIV包围,它将被添加到你#content
。因此,结构是这样的:
<div id="content">
<div class="page">
// Default page
</div>
<div class="page">
// Second page loaded
</div>
</div>
而且成功的功能将类似于:
success : function(result)
{
// Put result in #content div
var result = $(result).hide();
$("#content").append(result);
$("#content page").slideUp(); // Slide old content up
result.stop(true, false).slideDown(); // Slide new content down
// Change page selected, the new LI will have the class selected and it will be removed from the other LI's within #menu
_this.parent().addClass("selected").siblings().removeClass("selected")
}
上面的例子使用(一些读的东西):
- jQuery.ajax
- jQuery.siblings
- jQuery.addClass/jQuery.removeClass
- jQuery.slideDown/jQuery.slideUp
可能的改进:
这个代码不使用任何缓存,播种,当你点击一个链接第二次,它的另一个Ajax请求。您可以通过给.page
类别提供一个链接到#menu li a
的ID来改善此情况。