坚持IE7手风琴行为

时间:2015-05-07 10:52:06

标签: javascript jquery html css internet-explorer

Hello Guys我是jQuery的新手。 你可以看到这支手风琴正在研究FF和Chrome,但在IE7上给出了问题 http://brisbanebox.com/demo/multi_level_menu_accordion/1.html

点击222> >然后在999 ..在IE7上崩溃到222

在ff上仍然保持打开状态

任何帮助将不胜感激

这是我的JS代码

$(function(){
    $('.toc_content').find('li').each(function(){
        var li=$(this);
        if(li.find('> ul').length==1){
            li.addClass('collapsed').find('> a').click(function(e){

                var li=$(this).parent('li'), ul=li.find('> ul');

                ul.toggle();
                if(ul.is(':hidden')){
                    li.removeClass('collapsed').addClass('opened');
                }
                else{
                    li.removeClass('opened').addClass('collapsed')
                }
            });
        }
    });
});
var element = new Array();

$(function(){
    lastName = window.location.pathname.split("/");
    currentWindowLocation =  lastName[lastName.length-1];
    var fileLocation = $('a[href="'+currentWindowLocation+'"]');
    $('a[href="'+currentWindowLocation+'"]').parents().map(function(){
        element.push(this);
        }
    ).get()

    $('a[href="'+currentWindowLocation+'"]').attr('href','#');
    var arrayLength = element.length;

    for (var i = 0; i < arrayLength; i++) {
        if(element[i].tagName == "UL" && element[i].className.match(/sub-menu/g) ){
            element[i].setAttribute('style', 'display:block');
        }
        if(element[i].className.match(/has-children/g)){
            element[i].className = "has-children opened";
        }
    }


});

其他问题适用于所有浏览器(实际上不是问题),

当尝试点击任何父菜单&gt;&gt;打开子菜单,然后重定向到相关的HREF,

我想要的是 - 点击它不应该第一次打开子菜单,当它重定向到新页面时,它应该在那个新页面打开

1 个答案:

答案 0 :(得分:0)

我得到了离线朋友的答案

他说替换

element[i].setAttribute('style', 'display:block');

element[i].style.display = "block";

并且有效

:)