我有奇怪的错误,但这似乎只发生在IE6中,并且它是随机发生的。 我正在我公司的网站上实施omniture分析。我做了一个文字服务器控件并从更新面板中调用它。所有控件都是构建java脚本并使用ScriptManager.RegisterStartupScript(Control,Type,String,String,Boolean)将java脚本添加到页面。除了随机错误之外,这一切都很有效(见附图)。
从我读过的内容来看,IE6中的一个错误似乎是如果java脚本在body标签内的子元素中创建的话会导致java脚本错误,我的脚本最终会在表单标记内部。我只是想知道是否有任何其他方法可以用来注册不会导致此错误的控件。
Image http://img132.imageshack.us/my.php?image=errornf7.jpg
//我似乎无法正确显示图片,所以我只是链接到它。
答案 0 :(得分:2)
很抱歉,如果这最终完全偏离基础,但我记得有一段时间遇到这样的事情。我通过在我的脚本标签上添加'defer'来修复它,即:
<script defer="true"> ... </script>
这可以防止脚本在页面的其余部分加载完成之前运行,从而避免IE DOM错误听起来与您获得的内容非常相似。我没有使用ASP,所以我不知道如何通过ScriptManager添加defer属性。
答案 1 :(得分:2)
这看起来像脚本在加载之前修改DOM的情况。如果我是你,我会考虑在DOM准备好时添加脚本。很多JS库都有这样做的方法。
有关此类错误的更多信息:http://blog.mjjames.co.uk/2007/11/knowing-whats-on-your-page.html
答案 2 :(得分:0)
我也遇到过这个问题。我发现它影响了IE6和IE7的某些版本。在我的情况下,问题实际上是由ScriptManager.RegisterStartupScript方法引起的。一旦我删除它,它工作正常