我想用片段的内容替换原来的 div.wrap 内容。但使用 .load 会替换正文中的所有内容,而不仅仅是特定的 div。
$("nav#category-nav>ul>li").on("click", "a", function() {
var $thecontent = $("#thecontent"),
$wrapcontent = $("#thecontent > .wrapcontent");
var path = $(this).attr("href");
$wrapcontent.load(path);
});
最佳答案
问题源于 anchor 标记的默认行为。默认情况下, anchor 标记重定向到其 href
。对于您的用例,您必须捕获此默认行为并防止其发生。
将 evt
对象添加到函数中并防止默认行为,如下所示:
$("nav#category-nav>ul>li").on("click", "a", function (evt) {
evt.preventDefault();
var $thecontent = $("#thecontent"),
$wrapcontent = $("#thecontent > .wrapcontent");
var path = $(this).attr("href");
$wrapcontent.load(path);
});
关于javascript - 使用 jQuery 的 .load() 加载页面片段,但替换正文中的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24148127/