首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将jQuery tipsy与jQuery ON集成

将jQuery tipsy与jQuery ON集成
EN

Stack Overflow用户
提问于 2013-12-03 12:50:06
回答 1查看 91关注 0票数 0

我有一个网站,与无限的页面,并动态加载的内容。

目前我正在使用jQuery tipsy插件,需要在任何动态添加内容到站点的函数中调用它(以获得此新内容的工具提示)。我目前正在将我的绑定更改为ons,这将有助于实现这一点,点击和其他事件有关。

我现在经常重复的代码是:

代码语言:javascript
复制
   $("[data-tooltip]").tipsy({settings here});

是否可以在上使用jQuery,并将其绑定到正文,如果将内容添加到正文中,则内容(如果它具有data-tooltip属性)将自动执行tipsy函数?

例如:

代码语言:javascript
复制
 $("body").on("something","[data-tooltip]", function (e) { 
         $("[data-tooltip]").tipsy({settings here}); 
 });

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-04-07 22:21:17

您可能知道,在每次加载新内容后实际应用tipsy会好得多:

代码语言:javascript
复制
$.ajax({
   ..
   success: function( newHtml ) {
       $('#container').append( newHtml );
       $('#container .tipsy').tipsy({
           /** Your settings **/
       });
   }
}); 

为了达到你所要求的目标,你必须使用某种“倾听者”。以原始的基本形式等待插入的任何新的DOM元素:

代码语言:javascript
复制
function listenForNewToolTips() {
    $('.someclass[data-tooltip]:not([data-hastipsy])').tipsy({ 
           /** Apply data-hastipsy='true' **/ 
    });
    //Look again in 1000 milliseconds.
    setTimeout( listenForNewToolTips, 1000 );
}

上面的内容是非常不够的,因为它将是一个恒定的循环。on监听许多事件,但令人惊讶的是,监听每个DOM元素更改的事件并不多:

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20343112

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档