无法获取属性____的值:object为null或undefined

Jes*_*son 6 javascript jquery internet-explorer

我已经研究了这个问题.Stackoverflow上有几篇关于此的帖子,但似乎没有一个答案对我来说.

就像这里的其他帖子一样,它在Chrome或Firefox中运行良好.但在IE 9,8,7和6中我得到了同样的错误.我已经尝试了强制9进入兼容模式的hack,但它无法解决问题.

它说Unable to get value of the property 'styleHelper': object is null or undefined,具有讽刺意味的是,如果我 - 在IE 9中 - 键入控制台window.microstrategy.bone("W2552_Ctl").styleHelper它可以工作并返回我需要的功能(该ID由WYSIWYG创建,不要讨厌我).

是的,一切都包裹在一起$(document).ready.是的,没有错别字.我不明白为什么IE非常讨厌这个.任何帮助,将不胜感激 :)

有问题的代码是一个简单的变量声明.

var ctlBone = window.microstrategy.bone(targetId + "_Ctl").styleHelper.ctlBone;

似乎IE正试图在那时访问该对象而不是分配它.

Jes*_*son 6

最后!

这是一个setTimeout的问题.显然setTimeout(function, miliseconds, param1, param2, param3);在IE中打破了.

消息来源:http://arguments.callee.info/2008/11/10/passing-arguments-to-settimeout-and-setinterval/

  • 根据你的问题,没有办法告诉你甚至使用`setTimeout`.这就是为我们提供代码示例的重要原因. (4认同)
  • 我很抱歉.我的JavaScript文件长1000多行,这两个特定的位相差很远.鉴于我之前对该主题的研究,我认为这是IE浏览器特定的事情以及它如何处理对象,而不是setTimeout. (3认同)