1
Im在.on()
和如何使用它,而不是.bind()
在这种情况下有一些问题。 即时尝试在这里做什么是我点击一个链接,这是supose绑定另一个点击事件,而是它立即触发该事件。我查看了文档/ jquery.js文件,这就是我想如何做的。为什么这个on()会立即触发而不是仅仅绑定?
$('#click_me').on('click', function(){
$('#show_me').addClass('remain');
//this is only suppose to bind that next time i click anywhere on the document it should hide
// not right away
$(document).on('click', 'html', function(){
$('#show_me').hide();
});
});
$("#click_me").hover(
function() {
$('#show_me').show();
},
function() {
if ($('#show_me').hasClass('remain')){
return;
} else {
$('#show_me').hide();
}
}
);
<a href="#" id="click_me">click me</a><br /><br />
<div id="show_me"></div>
正要张贴这一点 - 这里有一个小提琴,显示它的工作原理:http://jsfiddle.net/bNaFV/3/ –
另外,我会补充说OP只需要绑定到'document''click'一次,而不是每个'click_me'单击(或至少解除绑定) – zerkms
@James Allardice:哦,谢谢你。一个()'(尽管我从来不需要它,但仍然很好地知道新的东西),+1 – zerkms