编辑:我已经确定了使用 $(document).ready() 而不是使用 body 的老式 onload 属性的以下问题的链接
问题
在 IE7 中,canvas/excanvas 在您点击重新加载之前不会呈现——我已经多次清除缓存,结果是一致的。
初始页面加载时画布始终为空,并且出现错误“对象不支持此属性或方法” - 引用 .getcontext() 调用的消息。但是,一旦我点击重新加载,它就会神奇地起作用。总是在重新加载后..它可以工作。它永远不会通过任何其他方式到达该页面。初始页面加载总是出错。
“初始页面加载”是指从单击的链接、手动输入地址栏或通过后退/前进按钮加载页面时。
这是一个复制品: http ://www.trevorsimonton.com/canvas_problem/example7.html
请注意,那里有很多额外的 Javascript 来重现引发此问题的 Drupal 环境。
编码
我正在使用 excanvas r3 -- http://code.google.com/p/explorercanvas/downloads/detail?name=excanvas_r3.zip和 Drupal 6
编辑:我删除了一堆我拥有的代码,因为我在网站上有 2 个地方我处理画布的方式完全不同。我能够在上面的目的地重现问题(http://www.trevorsimonton.com/canvas_problem/example7.html)
问题的根源
有谁知道更多关于 excanvas 或 IE7 的行为如何触发此类问题?除了浏览器的缓存之外,还有什么可能导致页面在“重新加载”命令和其他任何命令之间加载不同?