<div id="one">test test</div>
<div id="two">test test</div>
<div id="three">test test</div>
<div id="four">test test</div>
<div id="five">test test</div>
如果我想在div“4”和“5”之间用jQuery动态插入div,我该如何去做呢?
我尝试了这个,但它不起作用:
$("<div id='four-point-five'></div>").before("#five");
答案 0 :(得分:5)
反过来说:
$("#five").before("<div id='four-point-five'></div>");
答案 1 :(得分:3)
如果你想这样做,你应该使用insertBefore()
;
$("<div id='four-point-five'></div>").insertBefore("#five");
或者,你可以转换元素;
$("#five").before("<div id='four-point-five'></div>");
如果您使用的是通用解决方案,则可能会发现:last
或:last-child
选择器很有趣(取决于HTML的其余部分)
$('div:last').before("<div id='four-point-five'></div>");
答案 2 :(得分:2)
试试这个:
$("<div id='four-point-five'></div>").insertAfter("#four");
答案 3 :(得分:2)
$("#five").before("<div id='four-point-five'></div>")
答案 4 :(得分:2)
试试这个:
$("<div id='four-point-five'></div>").insertBefore("#five");
// OR
$("#five").before("<div id='four-point-five'></div>");
问题是你没有阅读doco .before()
方法希望现有元素作为$()
选择器,新内容作为参数。 .insertBefore()
方法的作用相反。
答案 5 :(得分:2)
使用此
> $("#five").before( " <div id='four-point-five'> </div> " );
答案 6 :(得分:1)
请试试这个:
$("#five").before("<div id='four-point-five'></div>");
答案 7 :(得分:0)
试试这个:http://jsfiddle.net/gNQwR/
$("<div>").attr('id', 'four-point-five').text('test 4.5').insertBefore("#five");