“c.defaultView.getComputedStyle() 为空”火狐浏览器中的问题

发布于 2024-12-16 11:32:49 字数 618 浏览 0 评论 0原文

我在域“abc.com”上的页面中使用jquery,该页面在域“def.com”上打开一个iframe,它也使用jquery(相同版本,我尝试了从1.5.2到1.6的不同版本。 4).该框架使用 jquery 库 thickbox 打开(不再维护...)。

我的问题出现在 Firefox(从 3.X 到 8.0 的任何版本)中,第一次加载 iframe 时出现 javascript 错误“c.defaultView.getCompulatedStyle(a, null) is null”,因此无法访问任何jquery初始化方法:

$(function() {
  /* Does not pass here in firefox */
});

在任何其他浏览器(chrome,ie,opera...)上,代码都可以工作,但是在firefox中,我必须手动重新加载iframe(右键单击->此框架->重新加载)...我有在这里阅读一些关于类似问题的帖子,每次问题都是两个 jquery 库之间的冲突。就我而言,我无法删除其中一个 JS,因为这两个页面位于不同的域中。

感谢您的帮助。

I'm using jquery in a page on domain "abc.com", and this page opens an iframe on domain "def.com", which also uses jquery (same version, and I tried different ones from 1.5.2 to 1.6.4). The frame is opened using the jquery library thickbox (not maintained anymore...).

My problem occurs in Firefox (any version from 3.X to 8.0), where I get the javascript error "c.defaultView.getComputedStyle(a, null) is null" the first time I load the iframe, and thus can't access any jquery initialization method:

$(function() {
  /* Does not pass here in firefox */
});

On any other browser (chrome, ie, opera...) the code works, but in firefox I have to reload manually the iframe (right click -> this frame -> reload)... I have read some posts here on SO about similar issues, and each time the problem is a conflict between the two jquery libraries. In my case I can't remove one of the JS because the two pages are on different domains.

Thanks for your help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤芳又自赏 2024-12-23 11:32:49

这与以下 Firefox bug 有关:

Bug 548397 - window.getCompulatedStyle() returns null inside iframe with display: none

可能的解决方案包括将 iframe 的宽度和高度设置为 0 或将可见性设置为隐藏,而不是使用 display: none

This is related to the following Firefox bug:

Bug 548397 - window.getComputedStyle() returns null inside an iframe with display: none

Possible solutions include setting the iframe's width and height to 0 or visibility to hidden, rather than using display: none.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文