Jquery 我有一句话:“我有一句话。”;TypeError:Window.getComputedStyle的参数1不是对象;但是不能把它孤立起来

Jquery 我有一句话:“我有一句话。”;TypeError:Window.getComputedStyle的参数1不是对象;但是不能把它孤立起来,jquery,firefox,Jquery,Firefox,Pre:我很确定,Firefox有一个微妙的bug,但我无法将其孤立,我请求帮助实现这一点 所以这很奇怪: 下面的‘问题’:我扩展了我的(ruby)页面以获取欧盟cookie的故事,但这不是重点;我现在的情况是,几乎所有的浏览器和页面都可以使用 除了在FireFox上的一个页面上,我得到了“TypeError:Window.getComputedStyle的参数1不是对象。”其他页面按预期工作(相同的模板,相同的逻辑) 仅当我使用$().show()和css:display:none时,才会出现

Pre:我很确定,Firefox有一个微妙的bug,但我无法将其孤立,我请求帮助实现这一点

所以这很奇怪:

下面的‘问题’:我扩展了我的(ruby)页面以获取欧盟cookie的故事,但这不是重点;我现在的情况是,几乎所有的浏览器和页面都可以使用

除了在FireFox上的一个页面上,我得到了
“TypeError:Window.getComputedStyle的参数1不是对象。”
其他页面按预期工作(相同的模板,相同的逻辑)

仅当我使用
$().show()
css:display:none时,才会出现此错误在一起。如果我备注
显示:无无错误,如果我备注(或删除)
.show()
:无错误

我已经找到了一个解决方法,(我使用了
可见性:隐藏;
,但我仍然确信,这不是我的错,我应该告诉FF bug Fixed,但我只能在我的主页上重现错误(尚未联机)

我没有其他错误

css如下所示:(节选)

jquery如下所示:(摘录和解决方法在这里)

有什么办法可以解决这个问题吗

编辑: sry,忘记:在windows 7/64上FF是29.0.1

编辑添加的调试信息

如果
display:none;

function css_defaultDisplay( nodeName ) {
   var doc = document,
   display = elemdisplay[ nodeName ];
   if ( !display ) {
      display = actualDisplay( nodeName, doc ); 
在那里,它尝试创建
div

// Called ONLY from within css_defaultDisplay
function actualDisplay( name, doc ) {
   var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), 
        display = jQuery.css( elem[0], "display" );
创建自身的副本(?)

返回到实际显示,其中elem现在是一个空对象,因此
elem[0]
也是
未定义的
未定义的
元素

getStyles(elem=undefined)jquery.js?body=1
curCSS(elem=undefined, name="display", _computed=undefined)jquery.js?body=1 
css(elem=undefined, name="display", extra=undefined, styles=undefined)jquery.js?body=1 


使用firebug在错误处设置断点,重新加载页面,然后查看作为第二个参数传递的内容以及从何处传递。或者学习google查找错误:@Anthony:I wave there“我可以非常频繁地在本地复制此错误(10次中有2-4次)。但是在从弹出窗口拦截器获取按钮之前进行睡眠(500次),失败就消失了。”,我的页面上有100%的内容,并且没有计时问题(这不正常)@Anthony:它在
窗口停止。getComputedStyle(elem,null);
并且elem是
未定义的
@halbit ok,在这种情况下
elem
来自哪里?
// Called ONLY from within css_defaultDisplay
function actualDisplay( name, doc ) {
   var elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), 
        display = jQuery.css( elem[0], "display" );
 // Define a local copy of jQuery
jQuery = function( selector, context ) {
   // The jQuery object is actually just the init constructor 'enhanced'
   return new jQuery.fn.init( selector, context, rootjQuery );
   }, 
getStyles(elem=undefined)jquery.js?body=1
curCSS(elem=undefined, name="display", _computed=undefined)jquery.js?body=1 
css(elem=undefined, name="display", extra=undefined, styles=undefined)jquery.js?body=1 
actualDisplay(name="div", doc=Document ?locale=de)jquery.js?body=1
css_defaultDisplay(nodeName="div")jquery.js?body=1
showHide(elements=Object[div#site-cookie-alarm], show=true)jquery.js?body=1
show()jquery.js?body=1
(?)(speed=undefined, easing=undefined, callback=undefined)jquery.js?body=1
step_through(step_number=0)site_c...?body=1 
(?)()?locale=de (Zeile 4)