我的页面上有一堆div,每个div都只有class属性。在div中有一些跨度,它们被设置为在qTip的帮助下显示工具提示。
工具提示应包含三个项目:
到目前为止我的代码:
<body>
<div class="OuterDiv">
<div class="InnerDiv">
<span class="Position">Position 1</span>
</div>
</div>
<div class="OuterDiv">
<div class="InnerDiv">
<span class="Position">Position 2</span>
</div>
</div>
</body>
脚本:
$(document).ready(function () {
var qTipContent = '<a href="javascript:void(0)" onclick="">↑</a> ';
qTipContent = qTipContent + '<a href="javascript:void(0)" onclick="">↓</a> ';
qTipContent = qTipContent + '<a href="javascript:void(0)" onclick="">X</a>';
$('.Position').each(function () {
$(this).qtip({
content: qTipContent,
hide: {
fixed: true
}
})
});
});
qTip内容中的onclick
函数应如何显示?
答案 0 :(得分:1)
我的解决方案可以在jsFiddle找到 - 除了清理qTipContent(真的很麻烦)之外,唯一真正值得注意的补充是向锚点添加id,并使用qTip api添加绑定到在添加qTip窗口时单击每个锚点的事件。
$('.Position').each(function(idx, elem) {
$(this).qtip({
content: qTipContent,
show: {
when: {
event: 'click'
}
},
hide: {
fixed: true,
when: {
event: "unfocus"
}
},
api: {
onRender: function() {
var $qtip = $(this.elements.content);
var odiv = $(elem).closest(".OuterDiv");
$("#up_arrow", $qtip).click(function() {
odiv.insertBefore(odiv.prev());
})
$("#down_arrow", $qtip).click(function() {
odiv.insertAfter(odiv.next());
})
$("#delete", $qtip).click(function() {
odiv.remove();
})
}
}
})
});