Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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
Jquery:如何检查在if条件中是否单击了某个元素_Jquery - Fatal编程技术网

Jquery:如何检查在if条件中是否单击了某个元素

Jquery:如何检查在if条件中是否单击了某个元素,jquery,Jquery,我的问题是,如果点击这个$(“ul-li-ul-li”),$(“ul-li”)也会被点击 如果我点击这个$(“ul-li-ul-li”),我不希望发生为点击$(“ul-li”)定义的任何操作 <script> $(function(){ $("ul li ul").css("display", "none"); $("ul li ul li ul").css("display", "none");

我的问题是,如果点击这个$(“ul-li-ul-li”),$(“ul-li”)也会被点击

如果我点击这个$(“ul-li-ul-li”),我不希望发生为点击$(“ul-li”)定义的任何操作

        <script>
        $(function(){
              $("ul li ul").css("display", "none");
              $("ul li ul li ul").css("display", "none");

          $("ul li ul li").on("click", function(e){
                    e.preventDefault();
                   e.stopPropagation();

            var x=$(this).find("ul").css("display");
               if(x=="none"){
                 alert("down");
                 $(this).find("ul").css("display", "block");
                 e.stopPropagation();
             return false;
              }

              if(x=="block" || x=="inline"){
                 alert("down else");
                 $(this).find("ul").css("display", "none");
                 return false;
              }

           });

           $("ul li").on("click", function(e){
                e.preventDefault();

            var x=$(this).find("ul").css("display");
               if(x=="none" ){
                alert("up");    
                 $("ul li ul").css("display", "none");
                 $("ul li ul li ul").css("display", "none");
                $(this).find("ul").css("display", "block");
                $(this).find("ul li ul").css("display", "none");
                return false;

              }

              if(x=="block" || x=="inline"){
                alert("up else");   
                 $(this).find("ul").css("display", "none");
                 return false;
              }

           });


        });
        </script>

$(函数(){
$(“ul li ul”).css(“显示”、“无”);
$(“ul li”).css(“显示”、“无”);
$(“ul li”)。在(“单击”按钮上,函数(e){
e、 预防默认值();
e、 停止传播();
var x=$(this.find(“ul”).css(“display”);
如果(x=“无”){
警惕(“下降”);
$(this.find(“ul”).css(“display”、“block”);
e、 停止传播();
返回false;
}
如果(x=“块”| | x=“内联”){
警惕(“向下的其他”);
$(this.find(“ul”).css(“display”、“none”);
返回false;
}
});
$(“ul li”)。在(“点击”,功能(e){
e、 预防默认值();
var x=$(this.find(“ul”).css(“display”);
如果(x=“无”){
警惕(“向上”);
$(“ul li ul”).css(“显示”、“无”);
$(“ul li”).css(“显示”、“无”);
$(this.find(“ul”).css(“display”、“block”);
$(this.find(“ul li”).css(“display”,“none”);
返回false;
}
如果(x=“块”| | x=“内联”){
警惕(“向上”);
$(this.find(“ul”).css(“display”、“none”);
返回false;
}
});
});

提前谢谢

我可能误解了你的问题,如果是,请说明。我会给孩子们的父母ul你想点击绑定到一个id,并针对其直系后代li的具体如下:

Jquery:

$("#uniqueid > li").on("click", function(e) {
Html:


使用
e.stopPropagation()
@guradio我用过它,但是当我点击$(“ul li”)时,down和upelse仍然会被提醒:为什么不使用.show()和.hide()
<ul id="uniqueid">