一個良好的開端動畫,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來改善此情況。