我的一位用户在我的一个页面上遇到了一个基于二十四个wordpress主题的问题。当他打开其中一个下拉菜单然后点击右键并选择"在新标签中打开"在他的浏览器中,下拉菜单不消失。它是冻结或卡住。您可以将鼠标移出下拉菜单,仍然会显示菜单,但情况并非如此。只有当您点击其他地方时,菜单才会消失。或者,如果您使用鼠标的中间按钮单击,则会发生相同的情况(因为这与&#34基本相同;在新选项卡中打开")。
该场景可以在官方的第二十三个演示页面上复制:https://twentythirteendemo.wordpress.com/ 只需将鼠标悬停在博客档案上,然后点击其中一个显示的链接和鼠标中键(或右键单击,然后选择"在新标签页中打开")。然后将鼠标从下拉菜单中移开,菜单将不消失。请参阅以下屏幕截图:
对我来说似乎是,原因是,链接活动因为它被点击了,因此不会消失。这个问题也出现在较新的wordpress主题中。
有解决方案吗?当我使用"在新标签页中打开时,如何防止下拉菜单卡住?#34;对于其中一个子元素?或者预期这种行为?如果是,我应该告诉用户我的网站?
答案 0 :(得分:0)
这适用于触控设备。您可以在第59行注释掉或删除此代码二十三/ js / functions.js:
if ( 'ontouchstart' in window ) {
menu.find( '.menu-item-has-children > a, .page_item_has_children > a' ).on( 'touchstart.twentythirteen', function( e ) {
var el = $( this ).parent( 'li' );
if ( ! el.hasClass( 'focus' ) ) {
e.preventDefault();
el.toggleClass( 'focus' );
el.siblings( '.focus' ).removeClass( 'focus' );
}
} );
}
// Better focus for hidden submenu items for accessibility.
menu.find( 'a' ).on( 'focus.twentythirteen blur.twentythirteen', function() {
$( this ).parents( '.menu-item, .page_item' ).toggleClass( 'focus' );
} );