Ian*_*Ian 0 javascript jquery runtime-error firefox-addon
我有一个带有以下代码的Firefox插件:
$("table > tbody > tr > td[width='600']").wrapInner("<div id='content_cont' />");
Run Code Online (Sandbox Code Playgroud)
这行代码执行,但它之后的所有行都不执行.它会在Firefox错误控制台中抛出一个错误,该错误的代码超过500KB.
码:
An exception occurred.
Traceback (most recent call last):
File "resource://jid0-ib8arkgejpxo7qidkuieut5rquk-at-jetpack/flvs-educator-release-version/data/redesign.js", line 49, in
$("table > tbody > tr > td[width='600']").wrapInner("<div id='content_cont' />");
File "resource://jid0-ib8arkgejpxo7qidkuieut5rquk-at-jetpack/flvs-educator-release-version/data/jquery.js", line 2, in .wrapInner
(function(a,b){function G(a){var b=F[a]={};return p.each(a.split(s)...<tons of meaningless code>...&define("jquery",[],function(){return p})})(window);
ReferenceError: Begin is not defined
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚为什么这样做.语法错了吗?
如果要包装的内容包含任何script元素,wrapInner则会再次执行它们,即使它们在首次加载页面时运行也是如此.有关更多信息,请参阅jQuery错误跟踪器上的Ticket#9134.
看起来script您正在包装的内容中的一个元素中存在错误,并且该错误阻止您的代码继续执行wrapInner调用.可能发生错误,因为代码假定它只会运行一次.最简单的解决方案可能是script在包装之前从内容中删除任何元素:
$("table > tbody > tr > td[width='600']").find('script')
.remove()
.end().wrapInner("<div id='content_cont' />");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
662 次 |
| 最近记录: |