Jquery 加载addthis脚本后将addthis HTML添加到dom

Jquery 加载addthis脚本后将addthis HTML添加到dom,jquery,twitter-bootstrap,requirejs,popover,addthis,Jquery,Twitter Bootstrap,Requirejs,Popover,Addthis,我的目标是在href=“#共享”的位置设置锚定标记,并使用添加此按钮将其转换为twitter引导弹出窗口。我有这个工作。更复杂的是,我将html添加到文档和我尝试过的克隆.clone(true),但由于某些原因,事件没有发生 以下是示例:(单击图像上方的“共享”按钮): 更具体的问题是,当你点击社交图标时,什么也不会发生 下面是下面代码的示例。这是我所拥有的require模块,它接收dom中的任何内容,其中href=“#share”,并将其转换为带有添加此按钮的弹出窗口 define(["jq

我的目标是在
href=“#共享”
的位置设置锚定标记,并使用添加此按钮将其转换为twitter引导弹出窗口。我有这个工作。更复杂的是,我将html添加到文档和我尝试过的克隆
.clone(true)
,但由于某些原因,事件没有发生

以下是示例:(单击图像上方的“共享”按钮):

更具体的问题是,当你点击社交图标时,什么也不会发生

下面是下面代码的示例。这是我所拥有的require模块,它接收dom中的任何内容,其中
href=“#share”
,并将其转换为带有添加此按钮的弹出窗口

define(["jquery", "jquery-bootstrap", "addthis"], function($, jb, at){

    var share = function(){

        var html = '<!-- AddThis Button BEGIN -->'+
            '<div class="addthis_toolbox addthis_floating_style addthis_32x32_style hide">'+
            '<a class="addthis_button_facebook"></a>'+
            '<a class="addthis_button_twitter"></a>'+
            '<a class="addthis_button_pinterest_share"></a>'+
            '<a class="addthis_button_tumblr"></a>'+
            '<a class="addthis_button_thefancy"></a>'+
            '<a class="addthis_button_compact"></a>'+
            '</div>'+
            '<!-- AddThis Button END -->';

        var template = '<div class="popover fade top in" id="share">'+
            '<div class="arrow"></div>'+
            '<div class="popover-content"></div>'+
            '</div>';

        var isVisible = false;
        var clickedAway = true;

        $("body").append(html);

        var ignite = function(){
            var script = document.createElement( 'script' );
            script.type = 'text/javascript';
            script.src = 'http://s7.addthis.com/js/300/addthis_widget.js#pubid=holstee';
            $("head").append(script);
            console.log("ignition");
        };

        $('[href="#share"]')
            .show()
            .popover({
                content: function(){
                    return $(".addthis_toolbox").clone().removeClass("hide");
                },
                html: true, 
                placement: "top",
                template: template,
                trigger: "manual"
            }).click(function(event){
                event.preventDefault();
                var toggle = ($(this).data('toggle') == undefined) ? true : $(this).data('toggle');
                clickedAway = false;
                if(toggle){
                    $(this).popover("show");
                    isVisible = true;
                    ignite();
                }else{
                    $(this).popover("hide");
                    isVisible = false;
                }
                $(this).data('toggle', !toggle);
            });
        /*
        $(document).click(function(e) {
            if(isVisible & clickedAway){
                $('[href="#share"]').popover('hide');
                isVisible = clickedAway = false
            }else{
                clickedAway = true
            }
        });
        */

    }



    return share;

});
define([“jquery”、“jquery引导”、“addthis”],函数($,jb,at){
var share=函数(){
var html=''+
''+
''+
''+
''+
''+
''+
''+
''+
'';
变量模板=“”+
''+
''+
'';
var isVisible=false;
var clickedAway=true;
$(“正文”).append(html);
var ignite=函数(){
var script=document.createElement('script');
script.type='text/javascript';
script.src=http://s7.addthis.com/js/300/addthis_widget.js#pubid=holstee';
$(“head”)。追加(脚本);
控制台日志(“点火”);
};
$('[href=“#共享”]”)
.show()
波弗先生({
内容:函数(){
返回$(“.addthis_toolbox”).clone().removeClass(“hide”);
},
是的,
位置:“顶部”,
模板:模板,
触发器:“手动”
})。单击(功能(事件){
event.preventDefault();
var toggle=($(this.data('toggle')==未定义)?true:$(this.data('toggle');
ClickedWay=false;
如果(切换){
$(此).popover(“显示”);
isVisible=true;
点燃();
}否则{
$(此).popover(“隐藏”);
isVisible=false;
}
$(this.data('toggle',!toggle));
});
/*
$(文档)。单击(函数(e){
如果(可见并单击路径){
$('[href=“#共享”]').popover('hide');
isVisible=ClickedWay=false
}否则{
ClickedWay=true
}
});
*/
}
回报份额;
});
您需要拨打:

addthis.toolbox('.addthis_toolbox');

将元素附加到popover之后。这将触发AddThis以呈现按钮上的所有单击事件。我只是通过从dev工具控制台调用上面的命令来测试这个问题,所有的按钮都正常工作。

我通过在弹出窗口显示后加载AddThis按钮来解决这个问题。见下面的代码

共享
$(“[rel=popover]”。popover({
html:对
});
$(“[rel=popover]”)on('show.bs.popover',function(){
$('#pcontent').html(“”)
$.getScript(“//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-4fa624772af11b1b”)
});

我迫不及待地想试试这个!非常感谢!你有一个bootply或这样的例子吗?我想做类似的事情