我正在为客户端设置WP页面。我有一个下拉菜单,主菜单项是一个不可点击的链接,显示“MENU”。在每个子页面上,我需要子页面的标题显示它通常(仅在起始页面)显示“MENU”的位置。
我已经能够通过我的主题支持帮助我的代码完成此任务:
(function($){
var title = '';
$('.menu-item').each(function(){
if( $(this).hasClass('current-menu-item')){
title = $(this).find('span').text();
}
});
if(title){
$("#menu-item-36 > a span").text(title);
console.log(title);
}
})(jQuery);
#menu-item-36
是主菜单项的ID - “MENU”。
问题是我还需要页面平滑加载而不重新加载每个页面上的标题。所以我使用的是一个名为Ajaxify Pro的插件,它非常适合这样做,但是Ajaxify从活动菜单项中删除了类'current-menu-item',所以我的代码不再起作用了。
有解决方法吗?子菜单中的活动/当前菜单项不会与菜单中的其他项目有任何不同的类别,所以我在解决这个问题的过程中扭曲了头脑。
非常感谢任何帮助!
在这里,您可以看到激活了Ajaxify且代码无效的页面:http://test.frankochrakel.se/
答案 0 :(得分:0)
我看到菜单的ID始终为menu-item-36
,这是您的ID吗?
无论如何,因为我看到所选菜单有一个current_page_item
类,所以就这样找到它:
(function($){
var title = '';
title = $('#menu-item-36').find('.current_page_item').text()
if(title) {
$("#menu-item-36 > a span").text(title);
console.log(title);
}
})(jQuery);