Javascript jQuery';s单击/quot;松开“;?
我目前正在为我朋友的网站开发导航。我使用事件绑定,如下所示:Javascript jQuery';s单击/quot;松开“;?,javascript,jquery,Javascript,Jquery,我目前正在为我朋友的网站开发导航。我使用事件绑定,如下所示: $(document).on('click', '.title-container h1 a, .img-container a', function() { showPosts(); return false; }); $(document).on('click', '.title-container h1 a, .img-container a', function () { $(this).data
$(document).on('click', '.title-container h1 a, .img-container a', function() {
showPosts();
return false;
});
$(document).on('click', '.title-container h1 a, .img-container a', function () {
$(this).data('clicked', !$(this).data('clicked'));
$(this).data('clicked') ? showPosts() : unShowPosts();
});
我需要的是一个jQuery函数或一些可以撤消前面的单击的函数。我试图避免使用这两次,我在想-是否有类似于悬停
(有两个参数)的东西可以用于此
长话短说-我只想为点击
showPosts()
正在使用$加载帖子。获取。我想要的:当我再次点击这篇文章时,我想启动unShowPosts()
函数
我希望这能以某种方式澄清它。很抱歉,我的英语似乎很差。您只需在单击时使用:.off(…)
设置活动,然后注册一个新的活动,它将调用您的其他功能
详情见:
请参见此处的行为:尝试使用.data()
这样的用法:
$(document).on('click', '.title-container h1 a, .img-container a', function() {
showPosts();
return false;
});
$(document).on('click', '.title-container h1 a, .img-container a', function () {
$(this).data('clicked', !$(this).data('clicked'));
$(this).data('clicked') ? showPosts() : unShowPosts();
});
比如:
var hidden = true
$(document).on('click', '.title-container h1 a, .img-container a', function() {
hidden = !hidden ? hidePosts() : showPosts()
});
你说的撤销是什么意思?你是说你只想让事件触发一次?如果是这样,请使用one()
您可以在showPosts
中使用toggle
,方法是撤销。如果您的意思是隐藏帖子,那么您可以像@abhitalks所说的那样使用toggle。如果您希望在帖子已经显示的情况下单击不执行,那么您需要在显示之前根据您的结构检查它们的可见性,或者它们是否具有某些类,甚至它们是否存在。这里曾经是一个事件,但在v1.8中被弃用(在v1.9中删除),这将使事件只工作一次,那就不行了。@DontVoteMeDown,这就是要求的。。。看:“我试图避免两次使用这个”我试图避免的是使用点击两次。你的解决方案毕竟不是我想要的。@TomekBuszewski你想禁用你的链接吗?是的,你说的很有道理。问题太不清楚了。但是,unShowPosts()
将始终被调用,因为您在第一次单击后检查它之前设置了.data()
,然后,$(this).data('clicked')!='单击的“
将始终为false
。它可以改为:$(document).on('click','title container h1 a,.img container a',function(){$(this).data('clicked',!$(this.data('clicked'));$(this.data('clicked')?showPosts():unShowPosts();})
@A.Wolff我真的对.data()
的使用感到困惑。…@A.Wolff:根据Op的最新评论,你的第二条评论似乎是“答案”。@Jai我在玩愤怒的小鸟,这是我的训练…;)但这并不是特定于已单击的元素,也不是特定于未编辑的元素,但也可能是它,这取决于预期的行为