我使用了一些复杂的 javascript (jQuery) 来创建一个编辑器,用户可以在其中拖放和调整不同的大小 div
s。问题是,有时,似乎没有任何原因,包含文本的 div 突然“卡住”或“卡在”包含的 div 上,并且无法拖动,尽管仍然维护包含 ui-draggable
的类列表。 ,就在我提到之后:
$this.draggable( "option", "disabled", false );
因此从技术上讲,拖动没有理由停止。我使用 Ctrl+Shift+K 来使用 Firebug 的 Web 控制台,但是当我拖动东西时,它不会触发控制台上的任何内容,而且事实上我无法拖动一个特定的东西没有显示任何内容。我尝试过分析,但这些东西只是告诉我们在某个脚本上花费了多少时间。我怎样才能找出为什么元素的拖动功能被关闭并且无法再次打开?我无法设置断点,因为我不知道代码中哪里出了问题。这看起来几乎是任意的。有什么方法可以简单地实时查看堆栈上发生的情况吗?
编辑
在 Firebug 中,我们可以看到对象的完整属性列表,比下面这个小屏幕截图中显示的内容要多得多。有谁知道我应该关注哪些与我这样的问题相关的对象属性?我真的不知道如何诊断问题。
最佳答案
@Allendar - 绑定(bind)过多确实是问题所在。我跟进了这个问题:Am I binding events over and over again in this jQuery code?并在 Visual Event 的帮助下,我摆脱了我一遍又一遍地做的绑定(bind),然后它工作得很好。
关于javascript - console.trace 或堆栈跟踪来查明 javascript 中错误的来源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14937777/