Javascript Firefox调试器:跳过html代码
我有一个远程html页面,需要调试一些javascript错误。我没有访问该页面的权限,因此我必须求助于FF调试器。在那里,我在Javascript Firefox调试器:跳过html代码,javascript,debugging,Javascript,Debugging,我有一个远程html页面,需要调试一些javascript错误。我没有访问该页面的权限,因此我必须求助于FF调试器。在那里,我在主体上调用了一个js函数onLoad,如下所示: <body onLoad="someFunction();" id="bd" class="fs3 FF" > 我不知怎的想跨过它,或者用这个来代替它: <body id="bd" class="fs3 FF" > 我怀疑someFunction()正在破坏其他onload事件,因为我
主体上调用了一个js函数
onLoad
,如下所示:
<body onLoad="someFunction();" id="bd" class="fs3 FF" >
我不知怎的想跨过它,或者用这个来代替它:
<body id="bd" class="fs3 FF" >
我怀疑someFunction()
正在破坏其他onload事件,因为我得到了一个错误,它是未定义的。调试这个的最佳方法是什么
我对JS调试相当陌生,但我尝试在这一行设置断点,但它们总是进入本文中的JS代码。有什么建议吗
更新:我无法访问该网站,因为该网站属于我的一个客户。他宁愿让我调试并建议他修复,而不是提供访问权限
我怀疑某个函数()正在破坏其他onload事件
损坏的onload
属性不会阻止调用其他加载回调(例如,通过addEventListener
连接)。但是你在评论中说你希望能够消除它作为一个可能的原因,所以:
如果页面上有任何script
元素,可以执行以下操作:
脚本元素
document.body.onload = null;
#5中的代码将删除属性创建的处理程序。(它不会删除属性,但无需删除。如果确实需要,请在上面添加
document.body.removeAttribute(“onload”);
。)因为断点位于脚本的第一行,它将在加载事件触发之前被命中。我有一个远程html页面,需要调试一些javascript错误。我没有访问该页面的权限
-您将无法修复它,因此调试它有什么意义?在执行onload之前暂停该页面,删除onload=“someFunction();”
“我怀疑someFunction()正在破坏其他onload事件”不,破坏的onload
属性不会阻止其他加载回调(例如,通过addEventListener
)连接,以避免被调用()“我无权访问该页面”哈?如果你不能更改页面,你到底想做什么?@t.J.Crowder你可能是对的。我的假设可能不正确。但我仍然必须让该函数停止运行,以确保这不是问题的原因,这才是问题的关键。但这不会删除我需要的脚本的onload事件吗?@hussain:不,只有通过onload
属性附加的一个处理程序。对于元素上的任何给定事件,只能有一个老式的“DOM0”事件处理程序。通过addEventListener
(或旧IE上的attachEvent
)正确附加的处理程序是一个单独的列表。(这就是为什么这不会改变任何事情,正如我在对这个问题的评论中指出的。但我理解你希望消除这一可能的原因。)现在我想起来了,多亏了你,超负荷可能和我的问题没有任何关系。谢谢你向我澄清了这一点。虽然我之前不是故意粗鲁的。如果你这么想,我很抱歉:)@hussain:别担心,书面交流总是不完美的。(说到这里,交流总是不完美的。)祝你好运。