我希望在每次单击按钮时使用jquery添加div作为第一个元素
<div id='parent-div'>
<!--insert element as a first child here ...-->
<div class='child-div'>some text</div>
<div class='child-div'>some text</div>
<div class='child-div'>some text</div>
</div>
答案 0 :(得分:135)
尝试$.prepend()
功能。
$("#parent-div").prepend("<div class='child-div'>some text</div>");
var i = 0;
$(document).ready(function () {
$('.add').on('click', function (event) {
var html = "<div class='child-div'>some text " + i++ + "</div>";
$("#parent-div").prepend(html);
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="parent-div">
<div>Hello World</div>
</div>
<input type="button" value="add" class="add" />
答案 1 :(得分:10)
扩展@vabhatia的说法,这就是你想要的原生JavaScript(没有JQuery)。
user
b'"user"'
答案 2 :(得分:7)
使用:$("<p>Test</p>").prependTo(".inner");
查看.prepend documentation on jquery.com
答案 3 :(得分:5)
parentNode.insertBefore(newChild, refChild)
在现有子节点refChild之前插入节点newChild作为parentNode的子节点。 (返回newChild。)
如果refChild为null,则在子项列表的末尾添加newChild。等效地,更可读的是,使用parentNode.appendChild(newChild)。
答案 4 :(得分:1)
var intervalLoadingClient;
function loadingClient(data) {
var loadingClientDiv = document.getElementById('loadingClient');
var percentageLoading = document.getElementsByClassName('percentageLoading');
var charge = 1;
intervalLoadingClient = intervalLoadingClient || setInterval(barCharge, 1000);
function barCharge() {
if (charge >= 76) {
clearInterval(intervalLoadingClient);
} else {
++charge;
$(percentageLoading).css("width", charge + "%");
}
}
if (data === "100") {
clearInterval(intervalLoadingClient);
$(percentageLoading).css("width", "100%");
setTimeout(closeLoadingClient, 5000);
setTimeout(removeLoadingClient, 7000);
function closeLoadingClient() {
$(loadingClientDiv).hide("fade", 1000);
}
function removeLoadingClient() {
$(loadingClientDiv).remove();
}
}
}
loadingClient(); //Starts the interval
loadingClient("100"); //Ends the interval.
这是(可能)ES7的新增功能。它现在是vanilla JS,可能是由于jQuery中的流行。目前可在Chrome,FF和Opera中使用。运营商应该能够处理它,直到它随处可用。
P.S。你可以直接预先添加字符串
parentElement.prepend(newFirstChild);
答案 5 :(得分:0)
$('.parent-div').children(':first').before("<div class='child-div'>some text</div>");
答案 6 :(得分:0)
此处必须
<div class="outer">Outer Text
<div class="inner"> Inner Text</div>
</div>
添加
$(document).ready(function(){
$('.inner').prepend('<div class="middle">New Text Middle</div>');
});
答案 7 :(得分:-1)
$(".child-div div:first").before("Your div code or some text");