Javascript 网站菜单没有’;当我点击一个锚时,它不会消失
对不起,我的英语。。。 我有一个基于Wordpress的单页网站。 我在我的页面上放置了一些锚,但在桌面版本中,当我点击一个相对于这些锚的链接(或普通链接)后,菜单关闭。 当我在一个小屏幕上时,菜单在点击一个锚后不会关闭(使用一个正常的链接id),页面只会转到锚,但由于菜单的原因而保持不可见。 我看了这个主题:但我不知道如何修改文件来修复它。 这是我的菜单的代码:Javascript 网站菜单没有’;当我点击一个锚时,它不会消失,javascript,Javascript,对不起,我的英语。。。 我有一个基于Wordpress的单页网站。 我在我的页面上放置了一些锚,但在桌面版本中,当我点击一个相对于这些锚的链接(或普通链接)后,菜单关闭。 当我在一个小屏幕上时,菜单在点击一个锚后不会关闭(使用一个正常的链接id),页面只会转到锚,但由于菜单的原因而保持不可见。 我看了这个主题:但我不知道如何修改文件来修复它。 这是我的菜单的代码: /** * navigation.js * * Handles toggling the navigation menu fo
/**
* navigation.js
*
* Handles toggling the navigation menu for small screens.
*/
( function() {
var container, button, menu;
container = document.getElementById( 'site-navigation' );
if ( ! container ) {
return;
}
button = container.getElementsByTagName( 'button' )[0];
if ( 'undefined' === typeof button ) {
return;
}
menu = container.getElementsByTagName( 'ul' )[0];
// Hide menu toggle button if menu is empty and return early.
if ( 'undefined' === typeof menu ) {
button.style.display = 'none';
return;
}
menu.setAttribute( 'aria-expanded', 'false' );
if ( -1 === menu.className.indexOf( 'nav-menu' ) ) {
menu.className += ' nav-menu';
}
button.onclick = function() {
if ( -1 !== container.className.indexOf( 'toggled' ) ) {
container.className = container.className.replace( ' toggled', '' );
button.setAttribute( 'aria-expanded', 'false' );
menu.setAttribute( 'aria-expanded', 'false' );
} else {
container.className += ' toggled';
button.setAttribute( 'aria-expanded', 'true' );
menu.setAttribute( 'aria-expanded', 'true' );
}
};
} )();
您能告诉我如何修改此代码,以便在单击锚后自动关闭它吗?我想“area expanded”的值定义了菜单的状态
感谢您的帮助您能为我们展示页面的HTML吗?据我所知,您的JS中没有提到锚元素,因此我们可能需要更多信息才能提供帮助。理想情况下,这是一个小的可复制的问题示例。我使用的主题ThemeIsle的作者回答说:对于主题中未提供的自定义工作或附加功能,他们帮不了忙。我注意到菜单甚至在桌面模式下也没有关闭,在自定义链接中有锚。我发现了一个不太好的问题:我用url+锚替换了自定义链接中的锚。问题是页面重新加载,我丢失了滚动条。所以我查看了发布的代码,但我根本不懂Javascript。也许应该将锚定定义为标准url以允许关闭?谢谢你以后的帮助。