【问题标题】:Wordpress clicking on sub Menu closes current sub menuWordpress 点击子菜单关闭当前子菜单
【发布时间】:2016-12-20 19:04:34
【问题描述】:

我有以下 javascript 用于移动菜单,它可以正常工作,但是当单击具有另一个子菜单的子菜单项时,它不仅关闭该子菜单,而且还关闭父子菜单。希望这是有道理的。关于如何让它只关闭该子菜单而不是父子菜单的任何想法?

jQuery('.mobile-menu .sub-menu').hide();
jQuery(document).ready(function () {
jQuery('.mobile-menu .sub-menu').parent().find('a:first').removeAttr('href').css('cursor','default');

if (jQuery('.mobile-menu .menu-item-has-children').length > 0) {
    jQuery('.mobile-menu .menu-item-has-children').click(
    function (event) {
        jQuery(this).addClass('toggled')
        if (jQuery(this).hasClass('toggled')) {
            jQuery(this).children('ul').toggle();
        }
    });
}
});

【问题讨论】:

    标签: javascript jquery html css wordpress


    【解决方案1】:

    我猜从这里看你需要event.stopPropagation()

    jQuery('.mobile-menu .sub-menu').hide();
    jQuery(document).ready(function () {
    jQuery('.mobile-menu .sub-menu').parent().find('a:first').removeAttr('href').css('cursor','default');
    
    if (jQuery('.mobile-menu .menu-item-has-children').length > 0) {
        jQuery('.mobile-menu .menu-item-has-children').click(
        function (event) {
            event.stopPropagation();
            jQuery(this).addClass('toggled')
            if (jQuery(this).hasClass('toggled')) {
                jQuery(this).children('ul').toggle();
            }
        });
    }
    });
    

    * 更新 * 我想这对我来说是那些日子之一。在我回答了这个问题之后(顺便说一句,谢谢你的意见),在我的脑海里,我记得有人建议停止传播工作,但在使用它时应该小心。我花了一点时间到 Google-fu 来解决问题所在。 this article 中已经很好地说明了这一点,但 TL;DR 可能会产生意想不到的副作用。 This entry at jQuery Fundamentals 有其他想法。如果它对你有用,那太好了,但你可能想把它放在脑海中以防万一。

    【讨论】:

    • 完美!!谢谢你:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-14
    • 2018-12-26
    • 1970-01-01
    • 1970-01-01
    • 2012-04-03
    • 1970-01-01
    相关资源
    最近更新 更多