2013-01-08 31 views
0

这个问题困扰了我好几个小时了,我希望有人能帮助我。Jquery slideDown/slideUp代码只有在CTRL + F5之后才起作用?

我有以下代码,它打开和关闭递归UL菜单。除IE9外,它在任何地方都可以使用但是,它只有当我用CTRL + F5刷新页面时才起作用。如果我不用CTRL + F5刷新,我会得到如下一堆错误:

  • SCRIPT5022:DOM Exeption:SYNTAX_ERR(12); (参考if(currentLink))
  • SCRIPT5022:DOM Exeption:SYNTAX_ERR(12); (参考currentLink.parent()。find)

有没有人知道这里发生了什么?

$('.groups').find('li:has(ul)').find('.uitklapTrigger').click(function(){ 
    var currentLink = $(this); 
    if (currentLink.parent().find('ul').first().is(":hidden")){ 
     currentLink.children('.plmin').html('-'); 
     currentLink.parent().find('ul').first().slideDown('slow'); 
    } else { 
     currentLink.parent().find('ul').first().slideUp("slow", function(){ 
      currentLink.children('.plmin').html('+'); 
     }); 
    } 

    return false; 
}); 
+1

反正你可以在[FIDDLE](http://jsfiddle.net/)中重现它? –

+0

我试过了,但是真的有太多的代码需要去除。在网站的多个页面上发生的事情是,我在简单的jquery代码上发现了奇怪的错误,通常这些代码正常工作。它只发生在(多个)IE9中,我需要一个CTRL + F5来让所有的东西再次运行。例如$(this).slideUp(“slow”,function(){alert('test')});只在ctrl + f5之后才有效,它只允许没有完成回调的动画。 – Hans

+0

.groups下的结构太大?这些元素有多个?你能举一个例子吗? –

回答

0

答案很清楚。它必须处理一些IE9设置。奇迹般地,我测试过的电脑上都有一些奇怪的(acer factory default)浏览器设置。我重置了浏览器设置,问题解决了......谢谢大家。

相关问题