带有qtip的动态javascript数据覆盖了具有相同消息的所有工具提示
dynamic javascript data with qtip is overriding all tooltips with same message
我有一个循环,其中出现了许多不同的唯一工具栏(标题)消息。这个jsfiddle显示了我遇到的问题。如果滚动显示默认文本框,则可以正确地看到title test
,它位于:中
<tr>
<td class="tips" title='title test'>
test this
</td>
<td>
adf
</td>
</tr>
我有一个循环,它模拟了我的生产代码,尽管它不是唯一的数据,但问题是它完全改变了所有标题,包括悬停时工具提示(标题)的现有标题,使其成为
content: 'This is the message!',
我意识到函数loadQtip()
中的代码不够具体,无法仅将新添加的标题更改为新添加的行,但我不确定如何针对新标题。
正如你所看到的,目前我只针对class='tips'
http://jsfiddle.net/bthorn/tw6mLcL1/
显示OP答案的新小提琴,以及与我自己的非常接近的数据
http://jsfiddle.net/bthorn/Lpuf0x7L/1/
.tips
子元素直接传递给loadQtips
函数。在这样做的过程中,元素的作用域是正确的,并且qTips只在新元素上初始化。
更新示例
// ...
while (count-- > 0) {
$cloned = first_row.clone();
loadQtip($cloned.find('.tips'));
$cloned.appendTo('#blacklistgrid');
}
// ...
function loadQtip(selector) {
$(selector).qtip({
// ...
});
}
// ...
或者,值得指出的是,属性data-hasqtip
已添加到所有已初始化工具提示的元素中。因此,您可以使用选择器.tips:not([data-hasqtip])
简单地否定所有具有data-hasqtip
属性的.tips
元素。
然而,这在您的情况下实际上并不起作用,因为您正在克隆已经具有该属性的元素。您可以通过在元素具有该属性之前对其进行克隆来解决此问题。
此处示例
function loadQtip(selector) {
$('.tips:not([data-hasqtip])').qtip({
// ...
});
}
相关文章:
- d3.js Chord图的动态工具提示
- Graphiti中是否有任何工具提示功能
- "工具提示"jQuery插件坏了
- 单元格的工具提示或标题不显示超过2000个字符
- d3.js用按钮更新条形图工具提示
- 使Intro.js工具提示响应
- 画布中绘制的矩形区域的弹出工具提示
- 使用CSS/JavaScript更改剑道图工具提示文本颜色
- 禁用NVD3 multiBarHorizontalChart中0值的工具提示
- 如何更改已显示的工具提示
- 如何访问高图表工具提示中的任何特定数据
- 如何在jQuery点击函数中添加并显示引导工具提示
- 如何为json键和值提供工具提示消息
- 如何在引导工具提示中显示数据库消息
- 如何更改数据工具提示消息
- 在页面加载时自动对焦 dx文本框 并将 dx工具提示显示为验证消息
- 带有qtip的动态javascript数据覆盖了具有相同消息的所有工具提示
- 从JavaScript动态加载工具提示消息
- 工具提示与错误消息
- 工具提示为不同的元素显示相同的消息