Jquery event.stopPropagation()不处理click事件

Jquery event.stopPropagation()不处理click事件,jquery,stoppropagation,Jquery,Stoppropagation,在我的代码的一部分(非常广泛,因此我将只显示适用的部分),我有以下内容: $(".help."+help+" .left").click(function(event){ event.stopPropagation(); if (!moving){ moving = 1; var move = $(".help."+help+" .all").css("left"); move = parseInt(move.substr(0,move.length-2)) + 300; if

在我的代码的一部分(非常广泛,因此我将只显示适用的部分),我有以下内容:

$(".help."+help+" .left").click(function(event){
event.stopPropagation();
if (!moving){
  moving = 1;
  var move = $(".help."+help+" .all").css("left");
  move = parseInt(move.substr(0,move.length-2)) + 300;
  if (move <= 0)$(".help."+help+" .all").animate({left:move},{duration:300,complete:function(){moving = 0}})
  else moving = 0;
};
});
本节用于在文档中的任何位置单击“帮助框”关闭“帮助框”

但是
事件.stopPropagation()
不起作用。我将
警报(“检查”)
放在那里,以确保它是问题所在,而且是问题所在

奇怪的部分?下一行代码使用的是
事件。stopPropagation()


我希望这是足够的信息。

我意识到了问题所在。与stopPropagation()无关。与未定义的变量有关


问题解决了。谢谢你的帮助

我意识到了问题所在。与stopPropagation()无关。与未定义的变量有关


问题解决了。谢谢你的帮助

是否确定正在调用
$(“.help.”+help+“.left”)的处理程序。单击(…)
?在那里尝试
console.log()
alert()
。是的,正在调用它。为了再次检查,我添加了一个警报以查看。您是否尝试了
return false
。这件事把我彻底难住了。我直接从网站上取下这个,并稍微调整了一下。所以它并不完全正确,但您可以理解。您确定调用了
$(.help.+help+.left)的处理程序。单击(…)
?在那里尝试
console.log()
alert()
。是的,正在调用它。为了再次检查,我添加了一个警报以查看。您是否尝试了
return false
。这件事把我彻底难住了。我直接从网站上取下这个,并稍微调整了一下。所以这并不完全正确,但你可以理解。
$("html").click(function(){
alert("check");
$(".help").each(function(){
  if ($(this).hasClass("open")){
    $(this).removeClass("open").animate({opacity:0},{duration:500,complete:function(){
      $(this).css("display","none");
    }});
  };
});
});
$(".showhelp").click(function(event){
event.stopPropagation();
if ($(this).hasClass("materials"))help = "materials";
else help = "bearings";
if (!$(".help."+help).hasClass("open")){
  $(".help."+help).addClass("open").css("display","block").animate({opacity:1},200);
}else{
  $(".help."+help).removeClass("open").animate({opacity:0},{duration:200,complete:function(){
    $(this).css("display","none");
  }});
};
});