我正在使用 AJAX 加載頁面。在每個網頁中,我都有 2 個常見的 div - 標題 div 和內容 div?,F在,當我從一個頁面導航到另一個頁面時,我使用以下命令將下一頁的內容 div 加載到當前頁面中$("#content").load(URL+" #content");現在,由于我使用 AJAX 加載頁面,因此我正在更改 URL 并使用 History API 操作歷史記錄。所以現在當有人按下瀏覽器的后退按鈕時就會出現問題,兩個頁面的標題 div 在加載期間都顯示,但在加載完成后消失。那么任何人都可以幫助我如何隱藏加載頁面的標題 div。這是我用來處理瀏覽器后退按鈕的代碼 function swap(href) { var x = document.getElementById("myTopnav"); x.className = "topnav"; var req = new XMLHttpRequest(); req.open("GET", "http://localhost/" + href.split("/").pop(), false); req.send(null); if (req.status == 200) { document.getElementById("content").innerHTML = req.responseText; $("#content").load(" #content"); return true; } return false; } window.addEventListener("popstate", function(e) { swap(location.pathname); e.preventDefault(); });
1 回答

幕布斯7119047
TA貢獻1794條經驗 獲得超8個贊
我認為這應該有效。#content如果是最外面的元素,它將響應包裝在 DIV 中,因為.find()只搜索內容。
function swap(href) {
$("#myTopNav").addClass("topnav");
var url = href.split('/').pop();
$.get('http://localhost/' + url, function(response) {
var fragment = $("<div>", {
html: response
});
$("#content").replaceWith(fragment.find("#content"));
}
});
}
window.addEventListener("popstate", function(e) {
swap(location.pathname);
e.preventDefault();
});
- 1 回答
- 0 關注
- 135 瀏覽
添加回答
舉報
0/150
提交
取消