Javascript &引用;如果;虽然条件返回true,但不执行事件处理程序内的子句

Javascript &引用;如果;虽然条件返回true,但不执行事件处理程序内的子句,javascript,jquery,jquery-events,Javascript,Jquery,Jquery Events,这是我的mouseenter事件处理程序 .mouseenter(function(e) { console.log('enters'); console.log('mouseDown: ' + mouseDown); if (mouseDown) { prepareStartPointPath(); console.log('enters if'); } }); 这里发生了一些奇怪的事情 enters mouseDown: tru

这是我的
mouseenter
事件处理程序

.mouseenter(function(e) {
    console.log('enters');
    console.log('mouseDown: ' + mouseDown);
    if (mouseDown) {
       prepareStartPointPath();
       console.log('enters if');
    }
});
这里发生了一些奇怪的事情

enters 
mouseDown: true

打印,这意味着即使满足条件,if子句中的代码也不会执行。可能发生了什么?

设置一个断点,逐步检查代码。不要要求其他人对你编写的代码进行基本调试,他们对此一无所知。我已经这样做了,但不同浏览器的不同行为让我感到困惑。(我有Java背景。)我想这里的人也会有类似的经历。发现问题在
prepare…
方法中。某种原因导致方法结束(没有抛出异常或其他东西)。无论如何,感谢您阅读我的代码。你至少给了我一些动力。因为你没有发布
prepare
方法,所以很难理解这个解释。如果
console.log('mouseDown:'+mouseDown)
执行并打印
'mouseDown:true'
,如果
正文执行,那么除了浏览器崩溃之外,没有任何东西可以阻止下面的
。我认为这是一种可能性,因为
prepare
方法也没有执行。但现在我发现了方法中的错误。感谢您指出这一点。在
prepareStartPointPath()
中引发了一个异常,它停止了执行。这是一种
空指针异常
的东西。我修复了它,代码现在正在运行。