[英]Using jQuery, how do I disable the click effect on the current tab?
我有一个正在进行动画的菜单,但是我想在动画发生时禁用单击。
<div></div>
<div></div>
<div></div>
$("div").click(function() {
$(this).animate({height: "200px"}, 2000);
return false;
});
但是,我想在事件发生时禁用所有按钮,并禁用单击的div。
我正在考虑向单击的div添加一个类,并将单击仅放在没有该类的div上:
$("div").not("clicked").click(function() {
$(this).animate({height: "200px"}, 2000).addClass("clicked");
return false;
});
但这似乎不起作用(我认为这在逻辑上是可行的)?
任何帮助表示赞赏。
干杯,
史蒂夫
$("div").click(function() {
if (!$(this).parent().children().is(':animated')) {
$(this).animate({height: "200px"}, 2000);
}
return false;
});
你可以做这样的事情...
$(function() {
$("div").click(function() {
//check to see if any of the divs are animating
if ($("div").is(":animated")) {
alert("busy");
return;
}
//whatever your animation is
var div = $(this);
div.slideUp(3000, function(){ div.slideDown(1000); });
});
});
只要任何div当前未设置动画,这都将为点击设置动画。 我很可能将所有这些div放到一个容器中,而不仅仅是引用div,因为它不仅会影响菜单,还会影响页面上的更多内容,
动画发生后如何禁用单击的<div>? 我已经向div中添加了一个已单击的类,但是执行以下操作似乎无效:
<div></div>
<div class="active"></div>
<div></div>
$("div").not('active').click(function() {
if (!$(this).parent().children().is(':animated')) {
$(this).animate({height: "200px"}, 2000);
}
return false;
});
我怀疑我在方法上缺少一些东西。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.