在通过wp_enqueue_script调用的js文件中我有这个:
jQuery(function () {
jQuery("<select />").appendTo("#primary_menu_mobile");
jQuery("<option />", {
"selected": "selected",
"value": "",
"text": "Go to..."
}).appendTo("#primary_menu_mobile select");
jQuery("#primary_menu_mobile a").each(function () {
var el = jQuery(this);
jQuery("<option />", {
"value": el.attr("href"),
"text": el.text()
}).appendTo("#primary_menu_mobile select");
});
jQuery("#primary_menu_mobile select").change(function () {
window.location = jQuery(this).find("option:selected").val();
});
});
在我的header.php中,我打电话给这样的菜单:
<?php wp_nav_menu( array(('container_id' => 'primary_menu_mobile')); ?>
输出是我手机上显示的两个菜单。一个是清单。所有链接都按预期工作。另一个是下拉菜单链接相同。这里的所有链接也可以正常工作。我应该制作一个单独的菜单un wordpress,就像我的主要导航器的移动性,而不是打电话给它?我很困惑为什么菜单打印两次。我重命名了js文件,看看没有jquery会发生什么,列表ul菜单仍然显示出来。
答案 0 :(得分:0)
如果我理解你的问题......
jQuery("#primary_menu_mobile a").each
上面的代码似乎暗示你知道你已经将它作为一个链接列表,所以只需要在完成每个链接后删除它们。