【发布时间】:2012-08-30 16:28:12
【问题描述】:
所以我正在尝试创建一个工具提示并想要它,以便在创建它时会向正文添加一个单击事件,这样每当单击正文上的任何内容时,工具提示就会消失。从理论上讲,这会传播,因此如果用户单击链接,则工具提示将消失,用户将前往链接指向的任何地方。
我遇到的问题是由于某种原因以下不起作用。甚至在我单击任何位置之前,我都得到了“此处”,它几乎在创建工具提示后立即触发删除,因此不会出现任何工具提示。关于如何做到这一点的任何想法。
$("a").click(function(event){
event.preventDefault();
$(document.body).click(function(){
$('.tooltip').remove();
console.log('here');
})
var text = $(this).attr('title');
var tooltip = $('<div class="tooltip">' + text + '</div>');
$(document.body).append(tooltip);
});
这是一个 JS Fiddle:http://jsfiddle.net/fgRTa/ 你应该先点击链接 2 以查看它是否有效,否则如果你先点击链接 1,然后点击链接 2,则正文上已经有点击事件,因此不允许添加的工具提示。从理论上讲,我希望这个问题也消失,这样当我点击一次时,点击事件就会被删除,但这是一个附带问题。
谢谢
【问题讨论】:
-
umm.. 你确定要在 a.click 函数中使用 document.body click 函数吗?每次单击第一个锚点时,它都会绑定另一个单击事件
-
是的。它只适用于特定的锚。以上只是一个简化的例子。
标签: jquery click event-bubbling