Javascript 工具提示中未捕获的事件

Javascript 工具提示中未捕获的事件,javascript,jquery,tooltipster,Javascript,Jquery,Tooltipster,我有通过ajax请求生成的工具提示(),其中包含供用户单击的图标。但是,当事件被触发时,我无法让侦听器工作。在下面的代码中,我从未收到警报弹出窗口。如何在工具提示中获取事件 以下是我初始化tooltipster的方式: $('.share').tooltipster({ content: 'Loading...', contentAsHTML: true, interactive: true, position: 'bottom', trigger: 'c

我有通过ajax请求生成的工具提示(),其中包含供用户单击的图标。但是,当事件被触发时,我无法让侦听器工作。在下面的代码中,我从未收到警报弹出窗口。如何在工具提示中获取事件

以下是我初始化tooltipster的方式:

$('.share').tooltipster({
    content: 'Loading...',
    contentAsHTML: true,
    interactive: true,
    position: 'bottom',
    trigger: 'click',
    functionBefore: function(origin, continueTooltip){
        continueTooltip();
        if(origin.data('ajax') !== 'cached'){
            var id = $(this).attr('id'),
                datas = id.split('-'),
                type = $(this).attr('data-type');

            if(type != 'pack' && type != 'life'){
                type = 'event';
            }

            var shareType = $(this).attr('data-share-type'),
                q = 'id='+datas[1]+'&t='+type+'&st='+shareType;

            Site.Funcs.ajaxCall('social', q, function(data){
                var html = Site.Funcs.templateCall(data);
                origin.tooltipster('content', html).data('ajax', 'cached');
                origin.tooltipster('show');
            });
        }
    }
});
这是Site.Funcs.templateCall()解析后更新到工具提示的内容:


必须在模板位于文档中后创建事件

Site.Funcs.ajaxCall('social', q, function(data){
     var html = Site.Funcs.templateCall(data);
     origin.tooltipster('content', html).data('ajax', 'cached');
     origin.tooltipster('show');
     $(document).delegate('button.icon', 'click', function(){
         alert('icon!');
     });
});

在异步ajax调用之外创建事件的方式是使用您的代码,因此可以说它忽略了您的工具提示。

在发布问题之前,我确实尝试过这个方法。运气不好。您是否尝试了on方法而不是委托?就像$('.row')。在('click','button.icon',function(){})上,我只是在查看tooltipster的源代码。哇,让一个包含内容的框出现,这是一个很大的开销。为什么不使用jquery.load?
$(document).delegate('button.icon', 'click', function(){
    alert('icon!');
});
Site.Funcs.ajaxCall('social', q, function(data){
     var html = Site.Funcs.templateCall(data);
     origin.tooltipster('content', html).data('ajax', 'cached');
     origin.tooltipster('show');
     $(document).delegate('button.icon', 'click', function(){
         alert('icon!');
     });
});