我需要菜單選項卡鏈接到我的服務器上的單獨的HTML文件,具有唯一的URL。我知道這本身並不需要CSS,但我還想保留Javascript-enabled菜單的「即時加載」效果,以及僅加載頁面的相關部分。 (我認爲,只有CSS的菜單會重新加載整個頁面)。這可能嗎?可能使製表符鏈接到離散的HTML文件,並且不會重新加載整個頁面?
回答
有可能與Knockout.js和/或JQuery的的幫助。
你可以用JQuery using the Tabs plugin provided by JQuery UI做到這一切。你將不得不編寫所有你自己的CSS,這樣你就不會得到默認的「標籤」外觀,而是類似菜單的東西。
或者,您可以使用Knockout.js創建客戶端視圖模型,其中包含一組綁定到菜單項的命令。然後,每個命令都會觸發頁面更新,很可能使用JQuery。
這裏有一個如何這可能工作開始於一個基本的菜單非常高層次的例子:
<ul>
<li data-bind="menuOption1">
...
</li>
</li>
一個Knockout.js查看模型
var MenuViewModel = function()
{
this.menuOption1 = function() {
// TODO: show the discreet HTML page
}
}
ko.applyBindings(new MenuViewModel());
你如何實際顯示的頁面是向上給你。使用JQuery AJAX調用來加載頁面內容可能是最簡單的。
謝謝,jQuery UI可能是我的技能水平的最佳解決方案。我已經在我的服務器上設置了一個演示:http://irishhuddle.com///RSS/development-bundle/demos/tabs/ajax.html ...但是,是否有可能讓每個標籤都是唯一的網址,所以地址欄是ajax加載的html文件的鏈接?例如, – Robert 2012-07-22 21:26:29
,我想第一個標籤的URL是http://irishhuddle.com/RSS/development-bundle/demos/tabs/ajax/content1.html而不是http://irishhuddle.com/RSS/development -bundle/demos/tabs/ajax.html#ui-tabs-1 – Robert 2012-07-22 21:32:37
是的。選項卡插件支持歷史和書籤,以便每個選項卡具有唯一的URL。使用AJAX請求,您必須使用一些加載和選擇選項來配置這些選項卡,但是在我的答案中,它們都記錄在鏈接中。 – sellmeadog 2012-07-23 17:29:51
您如何製作/設置菜單的樣式對單擊菜單中鏈接的頁面的方式沒有影響。爲了避免點擊時重新加載頁面,您需要向該頁面發出ajax
請求並將其加載到當前頁面中。
我建議使用jQuery's AJAX以避免跨瀏覽器問題。
例子:
$('#menu a').click(function(ev){
$.ajax({
url: "test.html",
cache: false
}).done(function(html) {
$("#results").append(html);
});
ev.preventDefalt();
});
非常感謝。 – Robert 2012-09-12 16:46:20
- 1. 鏈接到錨點並強制重新加載當前頁面
- 2. 重新加載鏈接的文件HTML
- 3. Ajax重新加載整個頁面上的href鏈接點擊
- 4. 如何在網頁加載組件,而不會重新加載整個頁面
- 5. 重新加載DIV而不重新加載整個頁面
- 6. 強制HTML內部鏈接/片段標識符(#)重新加載頁面
- 7. 如何點擊鏈接但不能重新加載頁面?
- 8. 不能在鏈接上重新加載頁面點擊
- 9. 重新加載HTML頁面
- 10. html div重新加載onclick提交按鈕重新加載整個頁面
- 11. JavaScript文件不能重新加載時Struts2的頁面刷新
- 12. PDF鏈接重新加載的頁面,而不是下載PDF
- 13. 如何鏈接到新頁面並使用ajax加載div?
- 14. 遇到表單頁面製作整個頁面鏈接
- 15. 能不能夠重新加載頁面
- 16. 使用json發送html文件並讓瀏覽器重新加載該json而不重新加載頁面
- 17. 鏈接到外部樣式表時頁面不會加載
- 18. HTML鏈接只是重新加載頁面
- 19. jQuery:控制頁面重新加載或離開當前頁面
- 20. XHR調用返回HTML,如何使用它並重新加載整個頁面?
- 21. jquery ajax重新加載整個頁面的html
- 22. jquery重新加載整個頁面而不是表單提交
- 23. $ window.location不會重新加載頁面,角
- 24. 不會重新加載頁面
- 25. 散列鏈接和力量重新加載/在emberjs &&刷新頁面軌
- 26. 使用html錨點(#)強制頁面重新加載 - HTML&JS
- 27. 如何使整個頁面的鏈接加載,而不是在iframe中加載
- 28. 如果沒有完整的頁面重新加載,可能會咕嚕編譯更少,並且實時重新加載?
- 29. 將頁面的完整HTML複製並加載到其他頁面
- 30. 可能刷新(不重新加載)與JavaScript的父頁面?
也許看看jquery-ui? – 2012-07-20 17:36:40