ボタンをクリックするたびに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>
$.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" />
@vabhatiaが言ったことを拡張すると、これは(JQueryなしの)ネイティブJavaScriptに必要なものです。
ParentNode.insertBefore(<your element>, ParentNode.firstChild);
使用:$("<p>Test</p>").prependTo(".inner");
チェックアウト 。jquery.comの.prependドキュメント
parentNode.insertBefore(newChild, refChild)
ノードnewChildを、既存の子ノードrefChildの前にparentNodeの子として挿入します。 (newChildを返します。)
RefChildがnullの場合、newChildは子のリストの最後に追加されます。同様に、より読みやすく、parentNode.appendChild(newChild)を使用します。
parentElement.prepend(newFirstChild);
これは(おそらく)ES7の新しい追加です。おそらくjQueryで人気があるため、現在はVanilla JSです。現在、Chrome、FF、およびOperaで利用できます。トランスパイラーは、どこでも利用可能になるまでそれを処理できる必要があります。
追伸文字列を直接追加できます
parentElement.prepend('This text!');
リンク: developer.mozilla.org - Polyfill
$('.parent-div').children(':first').before("<div class='child-div'>some text</div>");
ここで必須
_<div class="outer">Outer Text <div class="inner"> Inner Text</div> </div>
_
によって追加
$(document).ready(function(){ $('.inner').prepend('<div class="middle">New Text Middle</div>'); });