Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用jQuery合并包含子ul的两个ul菜单_Jquery_Html - Fatal编程技术网

使用jQuery合并包含子ul的两个ul菜单

使用jQuery合并包含子ul的两个ul菜单,jquery,html,Jquery,Html,我正在尝试使用jQuery合并两个无序列表。第二个列表包含子列表。我该怎么做呢?我的HTML如下所示 <ul class="Menu A"> <li><a href="#">Item One</a></li> <li><a href="#">Item Two</a></li> <li><a href="#">Item Three</a&

我正在尝试使用
jQuery
合并两个无序列表。第二个列表包含子列表。我该怎么做呢?我的
HTML
如下所示

<ul class="Menu A">
    <li><a href="#">Item One</a></li>
    <li><a href="#">Item Two</a></li>
    <li><a href="#">Item Three</a></li>
    <li><a href="#">Item Four</a></li>
</ul>

<ul class="Menu B">
    <li><a href="#">Item A</a></li>
    <li><a href="#">Item B</a>
        <ul class="childMenu">
            <li><a href="#">Item B1</a></li>
            <li><a href="#">Item B2</a></li>
            <li><a href="#">Item B3</a></li>
            <li><a href="#">Item B4</a></li>
        </ul>
    </li>
    <li><a href="#">Item C</a></li>
    <li><a href="#">Item D</a></li>
</ul>

我在这里尝试了该解决方案,但它不适用于子列表。

您需要倾听,看看您的每条语句中的每个this元素是否都有子项

var my_merged_list=”“;
$('ul li')。每个(函数(){
变量计数=$(this).find('ul').length;
var ll=$(this.find('a:first').text();
ll=“”;
我的合并列表=我的合并列表+“
  • ”+ll+“
  • ”; }); $('ul').remove(); $('body')。追加('
      '+my\u merged\u list+'
    ')
    
    

    您需要听一听,看看每条语句中的每个this元素是否都有一个子项

    var my_merged_list=”“;
    $('ul li')。每个(函数(){
    变量计数=$(this).find('ul').length;
    var ll=$(this.find('a:first').text();
    ll=“”;
    我的合并列表=我的合并列表+“
  • ”+ll+“
  • ”; }); $('ul').remove(); $('body')。追加('
      '+my\u merged\u list+'
    ')
    
    

    在菜单A之后添加菜单B中的HTML怎么样?这样您就不必担心在多个级别的列表项之间循环

    $(函数(){
    $(“MenuBoth”)
    .html($(“#MenuA”).html()
    .append($(“#MenuB”).html());
    });
    
    
    菜单A
    
    菜单B
    菜单都有
    只需将菜单B中的HTML附加到菜单A之后,您就不必担心在多个级别的列表项之间循环了

    $(函数(){
    $(“MenuBoth”)
    .html($(“#MenuA”).html()
    .append($(“#MenuB”).html());
    });
    
    
    菜单A
    
    菜单B
    菜单都有
    请发布一个您想要的结果的示例。请发布一个您想要的结果的示例。我喜欢这条路线的简单性,因为我想保持这两个菜单的完整性,但结合在一起这是完美的。非常感谢。我如何让它以760px的速度启动,然后在用户增加浏览器窗口大小时再次分离?您可以根据浏览器宽度显示/隐藏菜单。我喜欢这条路线的简单性,因为我想保持两个菜单的完整性,但结合在一起这是完美的。非常感谢。我如何让它以760px的速度启动,然后在用户增加浏览器窗口大小时再次分离?您可以根据浏览器宽度显示/隐藏菜单。