gpt4 book ai didi

javascript - jQuery toggleClass 不工作?

转载 作者:数据小太阳 更新时间:2023-10-29 05:44:53 26 4
gpt4 key购买 nike

非常简单地说:行 currentItem.toggleClass('open'); 似乎不起作用。

更准确地说,当用 Firebug 检查结果时,我可以看到相关元素上的类“打开”闪烁(出现并立即消失)。所以好像这个函数实际上被触发了两次(当然我只点击了一次)。

谁能解释一下这是为什么以及如何预防?

这是我的 jQuery 代码:

$('div.collapse ul.radio_list li input[type=radio]').click(function (event) {

var currentTree = $(this).parent().parent().parent();
var currentItem = $(this).parent().parent();
var currentGroup = currentItem.attr('rel');

$(this).parents('ul').children('li').removeClass('select');
if ($(this).is(':checked')) {
currentItem.addClass('select');
}

currentItem.toggleClass('open');

var currentLevel = 0;
if (currentItem.is('.level1')) {currentLevel = 1;}
if (currentItem.is('.level2')) {currentLevel = 2;}
if (currentItem.is('.level3')) {currentLevel = 3;}
var nextLevel = currentLevel + 1;

currentTree.children('li').filter('li[rel ^=' + currentGroup + '].level' + nextLevel).animate({'height': 'show', 'opacity': 'show'}, 250).addClass('currentChild');
});

这是我的 HTML 代码的一部分,为了更好的可读性而稍微简化了(我知道不是很漂亮,但我对 HTML 输出的控制有限):

<div class="col_left collapse">
<ul class="radio_list" rel="7">
<li class="onglet level0" rel="group1">
<span class="onglet level0">
<input type="radio" />
<label>Services Pratiques</label></span>
<input type="hidden" value="1">
</li>

提前致谢。

最佳答案

问题解决:JS文件实际上在HTML头部包含了两次,导致每次点击都会触发两次。

关于javascript - jQuery toggleClass 不工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4077098/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com