在Ajax加载之后加载社交媒体脚本


Load Social Media Script after Ajax Load

我试图将以下语法添加到现有页面中,以便将社交媒体图标(linkedin、fb和twitter)添加到页面中,但总是磕磕碰碰,它不会显示在页面上。

我是ajax的新手,我不知道我的错误在哪里,我只想在新闻的末尾加载图标。

这是我的代码

<!--SEA New Add-->
<script src="http://jqueryjs.googlecode.com/files/jquery-1.3.2.min.js" type="text/javascript"></script>
<script>
$(document).ready(function(){
    $("body").live("runScripts", function(){
        $(init);    
        function init() {
            $.get('news-sharesocial.html', inject);
        }
        function inject(data) {
            debugger;
            $('.news_sharesocial').html(data);
            //$('body').html(data);
            //document.write(data);
        }
    });
    $('.news_sharesocial').trigger("runScripts"); 
    //$("body").trigger("runScripts"); 
});
</script>

注:

  • 我把代码放在页面的末尾,因为这只是新闻,这是一个模板

感谢你在这方面的帮助,我已经纠结了很长一段时间了。非常感谢

-sea-

使用非常旧版本的jQuery和live的第一件事是在新版本中弃用标记。

其次,您需要修改如下代码,其中需要触发事件附加到body而不是news_sharesocial

$(document).ready(function(){
$("body").live("runScripts", function(){
    $(init);    
    function init() {
        $.get('news-sharesocial.html', inject);
    }
    function inject(data) {
        debugger;
        $('.news_sharesocial').html(data);
        //$('body').html(data);
        //document.write(data);
    }
});
$("body").trigger("runScripts"); 
});

由于您已将事件附加到主体,所以它将从同一元素触发。