jQuery响应菜单,桌面功能错误

时间:2017-07-26 22:20:14

标签: javascript jquery drop-down-menu menu submenu

我正在使用此jQuery代码创建移动响应式菜单。

显示移动菜单时效果很好。但是,在菜单显示桌面版本的横向平板电脑上,立即显示下拉/子菜单的初始点击,然后脚本正在添加display:none并立即隐藏它。

因此行为有利于它的目的,但当移动菜单被桌面版替换时,大型触摸屏设备的onclick功能失败。它可以再次单击,脚本允许正确使用。但是对于用户体验,需要点击两次是不可接受的。

这是一个主题,其中菜单将从移动设备更改为桌面的屏幕大小可能因站点而异,我不希望每次构建都更改它。所以更多"普遍"解决方案就是我所追求的。谢谢。

这是jQuery:

def checkReturnKeyPress():
    print ('check return key function started')
    while True:  # loop until user presses return key
        print ('check return key 2nd loop')
        for event in pygame.event.get():  # event handling loop
            print ('keydown for loop')
            if event.type == KEYDOWN:
                print ('keydown')
                if event.key == K_RETURN:
                    print ('return')
                    return

最后一项功能是让移动子菜单正常运行,同时打破移动设备的桌面版本。

PS,我有非常糟糕的JS / jQuery技能,非常清楚,精确的指示将不胜感激。

1 个答案:

答案 0 :(得分:0)

 if (jQuery(this).parent().children('.sub-menu:first').is(':visible')) 
{
           jQuery(this).parent().children('.sub-menu:first').hide(200);
      }

看起来你在它变得可见后隐藏了它。您需要删除该声明。 .hide()