Openlayers 3在pointermove处理程序中使用调试器导致chrome崩溃
Openlayers 3 using debugger inside pointermove handler crashes chrome
当我在" map "中设置断点时。("pointermove",处理程序)处理程序,使用chrome内置调试器,chrome崩溃。
崩溃,我的意思是未来不会生成指针移动事件,指针样式不会对网页的任何元素做出反应。'光标'样式的链接)。拖动导航停止工作。
这是我应该避免做的吗?
这既不是浏览器的错误,也不是解释器(JS)的错误。
如果你在事件处理程序中设置了断点,那么处理程序代码的执行将在断点处停止,即事件不会执行,直到你使用调试器或恢复执行。
编辑
事件处理程序在执行浏览器窗口所有事件处理程序的事件循环线程中运行。如果处理程序被停止,则事件循环被暂停。但是,如果您将鼠标移到浏览器窗口上,则浏览器窗口会转换新事件,然后将它们存储到事件队列中。如果继续执行,将处理队列中的下一个事件。但是断点仍然处于活动状态。您可以再次恢复,但与此同时,队列中存储的事件越来越多。下一个在断点中被捕获。
因此,删除断点并继续执行是唯一可以使您摆脱这个陷阱的方法。然后执行所有事件,并有机会处理进一步的事件。
我不知道队列的大小,但如果队列已满并且传递了更多事件,浏览器可能会崩溃。这意味着选项卡/窗口或浏览器本身将不再作出反应。
相关文章:
- VS2010 javascript调试器希望在VS2010的新实例中启动
- 变量在运行时未定义,但在使用调试器时定义
- 调试器;[错误]194:11:标识符是一个保留字
- 在页面检查器中启用javascript调试器
- console.assert失败时中断chrome调试器
- 仅打开调试器时出现Google chrome扩展错误
- 如何使eval'd调试器可访问的javascript代码
- 使用节点调试器调试ES6 Mocha测试
- Chrome javascript调试器在超时时暂停,可以't调试单击事件
- 通过node.js将Visual Studio调试器附加到电子边缘应用程序
- 调试器;在Chrome控制台中
- 如果调试器关闭,Internet Explorer将出现运行代码问题
- 检测Firebug(或任何其他Web调试器)何时用于调试
- 用于摩卡测试的 CLI 调试器
- 没有浏览器内容的 CUI 调试器,用于 NodeJS
- 如何将火狐调试器连接到带有WebDriver扩展的窗口
- Chrome调试器中显示的“类名”基于什么?能控制吗?
- JavaScript在调试器中工作,但在发布到IIS时不工作
- 为什么某些Javascript属性没有在调试器中以交互方式显示
- Openlayers 3在pointermove处理程序中使用调试器导致chrome崩溃