我希望能够"移动"使用Jquery在可信任的DIV中到达下一个最高UL的DOM节点(LI)。所以在下面......
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3
<ul>
<li>item A</li>
<li>item B</li>
<li>item C</li>
</ul>
</li>
</ul>
我希望能够将项目B向上移动到包含项目1,2和3的UL。这是当前的代码,无论出于何种原因都不起作用(基于所有键盘快捷键,取决于游标执行的位置,因此getSelection()策略:
选择当前节点......
var $current_node = document.getSelection().anchorNode.parentElement;
&#34;移动&#34;当前节点到第二个父UL([0]是我们已经在的直接UL)...
$($current_node).parents("ul")[1].append($current_node);
不幸的是,控制台报告了此错误......
未捕获TypeError:$(...)。parents(...)[1] .append不是函数
我错过了什么?我有一种感觉,我不理解JQuery对象和使用Javascript选择的DOM元素之间的区别。我不得不想知道$current_node
需要包含在$()
才能访问.parent()
,但我认为我仍然处于非常基本的状态。谢谢!
答案 0 :(得分:1)
这是一个有效的解决方案。希望它有所帮助!
$(document).ready(function(){
var elementToBeMoved = $("ul > li:eq(4)");
$("ul").append(elementToBeMoved);
$("ul > li:eq(5)").remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<ul>
<li>item 1</li>
<li>item 2</li>
<li>item 3
<ul>
<li>item A</li>
<li>item B</li>
<li>item C</li>
</ul>
</li>
</ul>
答案 1 :(得分:0)
我发布这个答案是因为我认为这是我遇到问题的核心问题,可能与上面解释/回答的问题略有不同。
product page: http ://www.example.com/Some-Product-pd123456.html
product category: http ://www.example.com/Product-Cat-pl12345.html
page a: http ://www.example.com/About-Us.html
page b: http ://www.example.com/Contactus.html
这是Javascript和JQuery的“传递”,我无法理解。