【发布时间】:2012-10-02 17:56:11
【问题描述】:
我真的需要解决这个问题……我已经做得太久了。
我想我需要获取每个 <a> 元素的 innerText 并将其放入 li_text 变量中。
以下是此主题的“提供”代码。该主题不支持子菜单。 但我需要这个,所以我试图让它与子菜单一起使用。
以下 js 脚本部分地“构建”了 HTML。
var$ $main_menu = $('#main_menu');
$main_menu.find('li').each( function(){
var $this_li = $(this),
li_text = $this_li.find('a').html();
$this_li.find('a').html( '<span class="main_text">' + li_text + '</span>' + '<span class="menu_slide">' + li_text + '</span>' )
} );
好像是这段代码:li_text = $this_li.find('a').html();从上面。这需要调整.... 我需要那条线从上面最接近的父级中获取“a”.....这有意义吗?
连同这个(来自header.php)
$primaryNav = '';
if (function_exists('wp_nav_menu')) {
$primaryNav = wp_nav_menu( array( 'theme_location' => 'primary-menu', 'container' => '', 'fallback_cb' => '', 'menu_class' => $menuClass, 'menu_id' => $menuID, 'echo' => false ) );}
导航 HTML 如下所示:
<nav id="main_menu" style="opacity: 1; display: none;">
<ul id="menu-dk-fl370" class="clearfix">
<li id="menu-item-23" class="mcdu_left menu-item menu-item-type-post_type menu-item-object-page menu-item-23 even">
<li id="menu-item-48" class="mcdu_right menu-item menu-item-type-post_type menu-item-object-page menu-item-48 odd">
<li id="menu-item-27" class="nolink menu-item menu-item-type-custom menu-item-object-custom menu-item-27 even">
<li id="menu-item-55" class="has_sub mcdu_right menu-item menu-item-type-post_type menu-item-object-page menu-item-55 odd">
<a href="http://fl370.com/?page_id=53">
<span class="main_text">MEDIA</span>
<span class="menu_slide">MEDIA</span>
</a>
<ul id="sub-menu" class="sub-menu" style="display: none;">
***<li id="menu-item-67" class="mcdu_sub mcdu_right menu-item menu-item-type-post_type menu-item-object-page menu-item-67">
<a href="http://fl370.com/?page_id=60">
<span class="main_text">
<span class="main_text">MEDIA</span>
<span class="menu_slide">MEDIA</span>
</span>
<span class="menu_slide">
<span class="main_text">MEDIA</span>
<span class="menu_slide">MEDIA</span>
</span>
</a>
</li>***
<li id="menu-item-66" class="mcdu_sub mcdu_right menu-item menu-item-type-post_type menu-item-object-page menu-item-66">
</ul>
</li>
</ul>
</nav>
等等……
**
这就是我想要得到的......
<span class="main_text">
<span class="main_text">BILLEDER</span>
<span class="menu_slide">BILLEDER</span>
</span>
<span class="menu_slide">
<span class="main_text">VIDEO</span>
<span class="menu_slide">VIDEO</span>
</span>
这些“名称”是通过 js 中的 li_text 函数插入的。 但它似乎只插入了第一个 li 一个名字。
我需要脚本从其“自己的”/父 li a 中获取页面名称。 并且仍然应用 js 脚本....
**
希望有人能帮忙....
谢谢
【问题讨论】:
-
您能否添加一个您正在获取的 HTML 样本并标记错误添加的标签?
-
您能否也发布您希望最终得到的 HTML?
-
另请注意,您不能使用 2 个或多个 ID 称为同一事物 (id="menu-item-xx")
标签: javascript jquery html navigation html-lists