将 javascript 绑定到动态创建的锚元素
我正在尝试使用 jquery.qtip 来作为 jquery.datatables 中的锚元素。
基本上它的工作原理是在锚元素上,我将 tooltip="tooltip desc" 放置到锚元素上。
在 js 文件中,我添加了以下内容:
$('.simpletable a[tooltip]').each(function()
{
$(this).qtip({
content: $(this).attr('tooltip'),
style: 'dark'
});
});
它仅适用于常规数据表,但当源是 ajax 时,它会停止工作。我猜这是因为 dom 准备好后,qtip 就会绑定到锚元素。然而,当时ajax dom还没有准备好。因此,具有 ajax 源的数据表不会绑定到 qtip。
有办法解决这个问题吗? 我一直在尝试找到一种方法来在 ajax 调用完成后调用上述 js 脚本,但我似乎不知道如何实现。
谢谢,
弗兰克
I'm trying to use jquery.qtip to an anchor element in jquery.datatables.
Basically how it works is that on the anchor elements, I put an tooltip="tooltip desc" to anchor element.
And in js file, I put the following:
$('.simpletable a[tooltip]').each(function()
{
$(this).qtip({
content: $(this).attr('tooltip'),
style: 'dark'
});
});
It works for just regular datatables but when the source is an ajax, it stops working. I'm guessing it's because qtip is bound to the anchor elements as soon as the dom is ready. However, at that time, ajax dom is not yet ready. Thus datatables with ajax source does not get get bound to the qtip.
Is there a way to fix this problem?
I've been trying to find a method to call the above js script after the ajax call is completed but I just can't seem to find out how if it's possible.
Thanks,
Frank
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
感谢AlienWebguy,我了解了live。他的答案并没有立即起作用(可能是不同的 qtip 版本?),因此对于 qtip2 日期:2011 年太平洋夏令时 7 月 20 日星期三 11:31:55,以下内容对我有用:
非常感谢 AlienWebguy!你不知道我是多么感谢你的帮助!
Thanks to AlienWebguy, I learned about live. His answer didn't work right away (maybe different qtip version?) so for qtip2 Date: Wed Jul 20 11:31:55 PDT 2011, following worked for me:
Thank you so much AlienWebguy! You have no idea how much I appreciate your help!!
使用面向未来的绑定观察器,例如
live()
或delegate()
:“将处理程序附加到与当前选择器匹配的所有元素的事件,现在和将来未来。”http://api.jquery.com/live/
Use a future-proof binding observer such as
live()
ordelegate()
: "Attach a handler to the event for all elements which match the current selector, now and in the future."http://api.jquery.com/live/