我有我的网站,http://www.yokaproject.com/,我决定清理它,我仍然在这个过程中如果你看到我有错误,我没有完成,但我感谢任何评论。顶部的导航栏显示锚点标签,点击并将jquery加载到div#container中。我的问题是每次呼叫都加倍并嵌套越来越多的内容,只需连续两次点击艺术。自上周一以来我一直在这,所以任何帮助表示赞赏。这是我的功能
$('.header a').on('click', ajaxLoad);
function ajaxLoad(e) {
e.preventDefault();
var url = $(this).attr("href");
var that = $(this);
that.off('click'); // remove handler
$.ajax({
url: url,
dataType: "html",
type: "GET",
cache: false
}).done(function(data){
$("#container").html(data);
});
};
如果你想更好地了解html和css,你可以访问我的网站。一旦它变大,我打算将它放在github上,但现在它没有必要。
答案 0 :(得分:0)
that.on('click', ajaxLoad); // add handler back after ajax
每次ajax响应到来时,这行代码都会重新附加click处理程序。每次单击that
,您都会创建一个ajax请求。
答案 1 :(得分:0)
你的错误是:
在always
函数中,您再次在回调中调用ajaxLoad函数!所以它多次呼叫。请从您的代码中删除该行。