从 WordPress 菜单顶部删除 a href
-
10-10-2019 - |
题
我想从函数中删除自动 a href 链接 wp_list_pages()
在 WordPress 菜单上,但我不想从子菜单中删除 href,只能从顶部菜单中删除
例如:
<li><a href="www.games.co.il">Games-not remove thr href</a>
<ul>
<li><a href="www.x4.co.il">Menu0-remove the auto href</li>
<ul>
<li><a href="www.x1.co.il">sub-menu 1-do not remove the auto href</a></li>
<ul>
<li><a href="www.ddd.co.il">**not** remove the href</li>
</ul>
<li><a href="www.x1.co.il">sub-menu 2 not-remove the auto href</li>
</ul>
</ul>
</li>
解决方案
定位 LI 中主列表直接子级的链接。
$("ul#menu > li a").removeAttr("href");
http://api.jquery.com/child-selector/
或者保留 url 并返回 false 。
$("ul#menu > li a").click(function(){ return false; });
URL 仍然会出现在浏览器中,但单击链接不会执行任何操作(如果启用了 JS)。
其他提示
正如大卫·多沃德所说:“别再想要那个了!”。
您可以做的是将主页重定向到第一个子项目(通常是概述等)。这最适合用于兼容性,以防有人禁用了 JS,并且下拉/悬停菜单仍然有效。
或者在主页内容上包含一个子菜单,这将帮助用户轻松导航到您想要的位置,而不会牺牲可用性。
使用 jQuery:像这样的东西:
$("ul#menu li:first a").removeAttr("href");
不隶属于 StackOverflow