Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么单击功能不起作用?_Javascript_Jquery_Hover_Click_Toggle - Fatal编程技术网

Javascript 为什么单击功能不起作用?

Javascript 为什么单击功能不起作用?,javascript,jquery,hover,click,toggle,Javascript,Jquery,Hover,Click,Toggle,这是我的 显示“.pull\u down\u内容”的“.item”click函数并不总是有效。为什么? 我发现,如果您单击第一个“磁贴”,这将正常工作,并且在打开时单击下一个磁贴仍然正常工作,但是如果您随后返回到原始磁贴,则单击功能停止工作,只有悬停功能正常工作 为什么会这样 这是我的部分代码 $(this).children('.item').on('mouseenter mouseleave click', function(e) { e.stopPropagation();

这是我的

显示“.pull\u down\u内容”的“.item”click函数并不总是有效。为什么? 我发现,如果您单击第一个“磁贴”,这将正常工作,并且在打开时单击下一个磁贴仍然正常工作,但是如果您随后返回到原始磁贴,则单击功能停止工作,只有悬停功能正常工作

为什么会这样

这是我的部分代码

    $(this).children('.item').on('mouseenter mouseleave click', function(e) { e.stopPropagation();
     if ($('.timelineTile').hasClass("clicked")) {
    if (!$(this).data('clicked')) {
        var Height = e.type==='mouseenter' ? '60px' : e.type==='click' ? '300px' : '0px';
        $(this).siblings('.pull_down_content').stop().animate({'height': Height}, 300); 

         $(this).siblings('.pull_down_content').children('.inner').css({'display': 'block'}, 300); 

        if (e.type==='click') $(this).data('clicked', true);
    }else{
        if (e.type==='click') {
            $(this).data('clicked', false);
            $(this).siblings('.pull_down_content').stop().animate({'height': '0px'}, 300);
   $(this).siblings('.pull_down_content').children('.inner').css({'display': 'none'}, 300);          

        }
    } }
                 });

每次单击“.TimeLineFile”时,您都会在子项上添加额外的单击事件。您应该将上述代码移到“.TimeLineFile”单击事件之外。在重新添加之前,至少要删除现有事件。

只是浏览了一下代码,但每次单击
“.TimeLineFile”
,似乎都在为子级添加额外的单击事件。您应该将上述代码移到
”之外。TimeLineFile“
单击事件。至少在重新添加之前删除现有事件。啊,真不敢相信这么简单,谢谢!我所发现的唯一一件事是,有时在从一个平铺到另一个平铺之后,“项目”需要单击以获得悬停并单击功能才能工作:这很奇怪@Ziggy31你弄明白了吗?如果没有,让我知道,我会检查你的小提琴。嘿-没有,还是继续吧-这就是我要做的事情-由于某种原因,在多次单击之后-直到你再次单击,悬停/单击才起作用。。这就像上一个磁贴上没有发生回键(高度-0)。不确定,但尝试替换
$('.TimeLineFile')。不是(这个)。removeClass('clicked')。查找('.pull_down_content')。高度(0)$('.TimeLineFile')。而不是(此)。removeClass('clicked')。查找('pull_down_content')。高度(0)。end()。查找('.item')。数据('clicked',false)。不是百分之百确定,但试一试。