0

jQuery Toggle 会破坏传播吗?

我的问题是我正在构建一个响应式菜单,并且当我将浏览器调整为我拥有的唯一断点的宽度时。jQuery 的 Toggle 函数打破了我的传播。

这是示例: http: //www.stlredtails.com/construction

如果您将浏览器的大小调整为小于或等于 1024 像素,请单击顶部的导航按钮,并在显示菜单后尝试单击联系人链接。它不会传播,然后如果您将浏览器的大小调整到 1024 像素以上... Contact 链接会传播。我不记得幻灯片切换有这个问题。

此外,如果您将浏览器的大小调整为 1024 像素或以下。单击导航按钮后,您必须刷新页面才能触发事件吗?jQuery 的 Toggle 是否也打破了这一点?

下面的jQuery:

    if((window.outerWidth && window.outerWidth > 1024) || (document.body.clientWidth && document.body.clientWidth > 1024)){
        jQuery(".navigation > ul > li").hoverIntent(
            function() {
               jQuery(this).children('ul').slideDown();
            },
            function(){
               jQuery(this).children('ul').slideUp();
            }
        );
        jQuery(".navigation > ul > li > ul").hover(
            function() {
               jQuery(this).children('ul').show();
            },
            function() {
               jQuery(this).children('ul').hide();
            }
        );
    }
    if((window.outerWidth && window.outerWidth <= 1024) || (document.body.clientWidth && document.body.clientWidth <= 1024)){
        jQuery(".navigation > ul > li > a").each( function() {
            if(jQuery(this).siblings("ul").length) {
                jQuery(this).removeAttr("href");
            }
        });
        jQuery(".navigation > span > a#navigation").toggle(
            function() {
               jQuery(this).parent().siblings("ul").css("display", "block");
            },
            function() {
               jQuery(this).parent().siblings("ul").css("display", "none");
            }
        );
        jQuery(".navigation > ul > li > a").toggle(
            function() {
               jQuery(this).siblings("ul").css("display", "block");
            },
            function() {
               jQuery(this).siblings("ul").css("display", "none");
            }
        );
    }

有什么建议么?

谢谢!

4

0 回答 0