用于动态直播活动的Tipsy jquery插件不起作用
我正在使用tipsy jquery插件为动态显示的元素创建工具提示。
工具提示适用于非动态元素,所以我肯定包含了我需要的所有内容。 我正在使用jquery 1.5.1
这是我的jquery代码: $('.voted-user-image').tipsy({gravity:'s', live: true});
这是一个图像链接元素的html,它在单击一个触发AJAX请求的链接后在div中动态显示:
`
如何让这个工具提示插件工作?
你能试试这段代码吗:
$('a.voted-user-image').tipsy({live: true});
每次添加内容时调用插件似乎都错了:)
function initTipsy(){ $(function(){ $('.tips').tipsy({gravity: 's',html: true}); }); $(function(){ $('.tips-right').tipsy({gravity: 'w',html: true}); }); $(function(){ $('.tips-left').tipsy({gravity: 'e',html: true}); }); $(function(){ $('.tips-bottom').tipsy({gravity: 'n',html: true}); }); }
我有这个function,我在我的main.js中调用,适用于我的整个项目。 这允许我向任何静态元素添加提示。 我对动态元素有同样的问题,我找到的解决方案是在将新元素附加到html后再次调用initTipsy。 我知道这不是一个漂亮的解决方案,但它确实有效。 希望能帮到别人。
它应该工作得很好..
检查示例.. http://jsfiddle.net/gaby/3pAue/2/ ( 使用tipsy和1.5.1 jQuery )
错误必须位于其他地方..确保您的html有效( 由ajax带来的那个,并且放置在放置它的位置是有效的。 )
不确定为什么Dolphin的答案得到了提升,甚至奖励了奖金。 他建议使用jQuery tipsy的live
选项,但这已经在原始海报(未经编辑)提供的代码中使用。 显然,该选项似乎没有成功。
回答原帖:tipsy插件的live
选项似乎不适用于所有版本的jQuery。 1.7.1版本已经确认可以使用,因此升级jQuery可能是一个好主意。
我刚刚在AJAX请求呈现的div中的script
标记中再次调用了插件。 那很有效。