2012-03-08 73 views
0

我的问题与this post完全相同(IE8告诉我'document.getElementById(...)' is null or not an object,但每个规定的答案(包括OP所接受的答案) )是“DOM尚未准备好;在一个onload回调中包装你的代码的一些变种”。document.getElementByID(...)为空或不是对象

问题是,这不是我的伎俩。代码一直住在$(document).ready(...)里,并没有被修改在大约22个月的时间里,尽管周围发生了变化,但它始终如一地工作着。“突然之间,”这是抛出这个错误的代码。 ñ所有其他浏览器 - 再一次,一直在IE8中工作,直到最近(我们刚刚注意到这个问题今天上午)。我必须相信这是由其他标记或脚本更改引起的,但我无法想象可能会导致此破坏的原因。我在哪里可以开始寻找?

+0

请问您可以分享更多的代码(甚至url)吗? – 2012-03-08 14:21:32

+2

开始寻找具有该ID的元素是否仍然存在。但是,如果您使用jQuery,为什么不使用'$(“#id”)'? – pimvdb 2012-03-08 14:21:59

+0

@OfirBaruch:不幸的不是。我会试着鼓起一个小小的必要和充分的例子来重现这个问题。 – 2012-03-08 14:23:17

回答

1

检查是否存在具有正确标识(区分大小写!)的元素,并检查该标识是否是唯一的(应该是该标识不应具有该标识的其他元素)。

+0

ID(套管和全部)是正确和独特的。 – 2012-03-12 02:49:29

+0

然后,我需要示例代码来调试。如果在代码运行之前还有其他JavaScript代码会改变页面(更改ID /删除元素),那么这可能是问题所在。 – Willem 2012-03-12 08:11:10

相关问题