我想在menu div
中移动一个html元素,它的工作和移动完美,但显示[object Object]而不是html anchor
。
HTML
<div class="main">
<a id="back">Back</a>
</div>
<div class="main menu">
<ul>
<li><a href="#">First</a></li>
<li><a href="#">Second</a></li>
<li><a href="#">Third</a></li>
</ul>
</div>
Jquery的:
var back = $('#back');
var htmlBack = '<li>' + back + '</li>';
$('.menu > ul > li:first-child').before(htmlBack);
$('#back').closest('.main').remove();
答案 0 :(得分:1)
因为你正在使用$('#back')
这是一个jquery对象,然后用字符串来连接它。
您需要使用$("#back").text()
才能获取其文本。
或者您需要先创建li
,然后将锚元素附加到其中。
var back = $('#back');
var htmlBack = $("<li/>");
htmlBack.append(back);
$('.menu > ul > li:first-child').before(htmlBack);
答案 1 :(得分:1)
尝试:
var main = $('#back').parent();
var htmlBack = $('#back').wrap('<li></li>').parent();
$('.menu > ul > li:first-child').before(htmlBack);
main.remove();