javascript - 链接 jquery 追加

标签 javascript jquery html css

我正在尝试弄清楚如何将多个追加链接到我的标记中。基本上在附加一个元素之后,我希望下一个元素将它附加到第一个附加元素。我希望我说的是有道理的。

如果你看一下我的代码,我只是附加了元素 <ul class="menu" />进入元素 #footer .research-centers-menu .research .

然后在下一个代码中,我尝试插入/附加变量 centers<ul class="menu" />

现在的当前输出不会插入元素,而是将其放在外面。为我糟糕的英语和解释道歉

var researchCenters = $('a[href$="/items"]').next().clone(),
  centersList = $('li', researchCenters),
  centers = centersList.slice(0);


var research = $('#footer .research-centers-menu .research').append('<ul class="menu" />');

$(research).append(centers);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<ul>
  <li>
    <a href="aim/items"></a>
    <ul>
      <li>item one</li>
      <li>item two</li>
    </ul>
  </li>
</ul>

<div id="footer">
  this is a footer
  <div class="research-centers-menu">
    <div class="research">

    </div>

  </div>
</div>

最佳答案

附加问题的原因是 append() 返回原始元素,而不是附加元素。

要使您的代码正常工作,您可以颠倒逻辑以便创建新的 ul,然后使用 appendTo()。这将保留附加 li 所需的引用。试试这个:

var researchCenters = $('a[href$="/items"]').next().clone(),
  centersList = $('li', researchCenters);

var $research = $('#footer .research-centers-menu .research');
var $ul = $('<ul class="menu" />').appendTo($research);
$ul.append(centersList);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<ul>
  <li>
    <a href="aim/items"></a>
    <ul>
      <li>item one</li>
      <li>item two</li>
    </ul>
  </li>
</ul>

<div id="footer">
  this is a footer
  <div class="research-centers-menu">
    <div class="research"></div>
  </div>
</div>

关于javascript - 链接 jquery 追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45609851/

相关文章:

javascript - 如何在 Meteor 中渲染嵌套集合?

javascript - 如何向 Google 图表添加数据标签

html - 带有图像的段落后的行

javascript - 未定义的 CSS 属性(上/左)

javascript - 为什么 typeahead.js 没有显示 ajax 响应中的所有项目?

javascript - 如何将 XSL 属性值传递到 HTML5 数据标记中?

当我使用模板时,Javascript 函数不起作用

javascript - Struts Iterator 每个 div 放置 3 个项目

javascript - d3.js 按汇总字段排序

javascript - 如何在使用 Confirm() 函数时检查用户是否单击了 'Ok' 或 'Cancel'?