Jquery切换不';我不能正常工作
我有这个Jquery代码:Jquery切换不';我不能正常工作,jquery,Jquery,我有这个Jquery代码: $('.item_bar_action_holder_drop a').click(function() { var item_bar = $('.item_bar_action_holder_actions'); if(item_bar.is(':visible')) { $(this).removeClass('active'); } else {
$('.item_bar_action_holder_drop a').click(function() {
var item_bar = $('.item_bar_action_holder_actions');
if(item_bar.is(':visible')) {
$(this).removeClass('active');
} else {
$(this).addClass('active');
}
item_bar.slideToggle('fast', function() {
});
});
这里的问题是,当我多次单击“活动”类将设置为关闭面板的按钮时,它是错误的。我不明白为什么会这样 检查
项_栏
是否正在设置动画,如果是以下情况,则不再排队:
$('.item_bar_action_holder_drop a').click(function() {
var item_bar = $('.item_bar_action_holder_actions');
if (item_bar.is(':animated')) {
return;
}
...
});
我猜您的活动类的css是=display:block;而您的项目工具栏的默认css是display:none;如果我是对的;您也可以使用这种方式:
$(document).ready(function() {
$('.item_bar_action_holder_drop a').click(function() {
var item_bar = $('.item_bar_action_holder_actions');
item_bar.removeClass('active');//removes class from all
$(this).addClass('active');//adds class clicked one
if( item_bar.is(':visible')) {//edited here !
item_bar.slideToggle('fast',function() {
$(this).removeClass('active');//removes class when animate complete
});
}
});
//if you want to show first panel when your document is ready
$('.item_bar_action_holder_actions:first').show().addClass('active');
});
注意:您没有显示您的html,因此我尝试猜测您的html。@JohnMark也许您可以提供一个演示来显示您正在经历的确切行为。这是个好主意,但是这个代码不能正常工作。它将永远不会打开,因为面板开始关闭$('.item_bar_action_holder_drop a')。单击(function(){var item_bar=$('.item_bar_action_holder_actions');$(this)。toggleClass('item_bar_action_clicked');item_bar.slideToggle('fast',function(){});这是我的新代码,非常简单。。对不起,伙计们,问题是其他jquery函数对面板有影响。比如,有人知道我怎样才能看到哪些javascript函数“链接”到一个按钮上吗?你只有一个面板对吗?你能给我们展示一下你的html和css吗?