javascript - 使用jQuery将元素移动到倒数第二个h2之前

标签 javascript jquery css

我正在尝试将类为 .books_inarticle_list 的元素从其在倒数第二个 H2 之前的原始位置移动。

我正在使用无法正常工作的以下内容:

$('.books_inarticle_list').insertBefore('#content_column > h2:nth-last-child(2)');

另一方面,类似这样的方法可行:

$('.books_inarticle_list').insertBefore('#content_column > h2:nth-of-type(6)');

所以问题一定出在 nth-last-child() 选择器上,但我不明白它可能是什么。

有没有人看到该代码有任何问题或知道将该元素移动到倒数第二个 H2 标签之前的替代方法?

最佳答案

试试 .get() method , 支持负数倒转。

$('.books_inarticle_list').insertBefore($('#content_column > h2').get(-2));

编辑 转念一想,遵循您自己的示例并使用 :nth-last-of-type() selector 更有意义, 这将是相反的。

$('.books_inarticle_list').insertBefore('#content_column > h2:nth-last-of-type(2)');

:nth-last-child() 对您不起作用的原因是,:nth-child() 指的是他们在 DOM 中的 sibling ,而不是选择器返回的元素列表。

关于javascript - 使用jQuery将元素移动到倒数第二个h2之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42518318/

相关文章:

asp.net - IsClientScriptIninclude注册的问题

javascript - 如何调试 jQuery 嵌套可排序可拖动元素?

javascript - jquery 用 div 包裹元素

javascript - 如何使复选框检查在两个复选框组之间切换?

jquery 和 CSS - Z 索引

javascript - Revolution Slider JS 冲突

javascript - 隐藏输入时 input.select() 不起作用

javascript - 如何在jquery中的onfocus事件上调用一个函数

javascript - 创建一个下拉式菜单

CSS 字体颜色被 IE8 错误解释,但不是 IE7 或 IE9