$.ajax 仅运行一次脚本


$.ajax run script for one time only

当我打开带有 ajax 的链接时,我想更改 wibyia 工具栏以将 facebook 喜欢按钮刷新到当前网页,所以我每次都重新加载 wibyia 脚本,但它只加载一次......帮助

    $(document).ready(function(){
    $("[href^='?id=']").click(function(){
    var linkid=$(this).attr("href");
    $(".col-1").html("<div style='text-align:center;margin-top:10px'><img  src='images/loading.gif' /> </div>");
    window.history.pushState("object or string", "index", "http://localhost:10358/"+linkid);
    $.ajaxSetup ({
    // Disable caching of AJAX responses
    cache: false
     });
    $.get("/catdata/news.php"+linkid,function(result){
    $(".col-1").html(result);
    });
    $.getScript("http://cdn.wibiya.com/Toolbars/dir_1185/Toolbar_1185788/Loader_1185788.js");
    return false;
});
});

您在元素".col-1"中单击的链接吗?如果是这样,那么它不起作用,因为点击事件侦听器只附加一次,而不是在每个 ajax 帖子之后。

使用 .on()(jQuery 版本>= 1.7) 或 delegate(),或者只是在每次 ajax 调用后分配 click 事件处理程序。