web-dev-qa-db-ja.com

jQuery-divをbodyに追加すると、bodyはオブジェクトですか?

Divをbodyに追加すると、bodyがオブジェクトとして返され、それを使用するたびに-明らかにbodyが使用されます。悪い。

コード:-

var holdyDiv = $('body').append('div');
$(holdyDiv).attr('id', 'holdy');

Holdyの 'id'がボディに追加されています...え?私は何を間違えていますか。

42
waxical

jQueryメソッドは、適用されたセットを返します。

。appendTo を使用します。

var $div = $('<div />').appendTo('body');
$div.attr('id', 'holdy');
74
Didier Ghys
    $('body').append($('<div/>', {
        id: 'holdy' 
    }));
19
thecodeparadox
$('</div>').attr('id', 'holdy').appendTo('body');
11
xdazz

代わりにappendToを使用してください。 appendまたはappendToはjQueryオブジェクトを返すので、$()で囲む必要はありません。

_var holdyDiv = $('<div />').appendTo('body');
holdyDiv.attr('id', 'holdy');
_

.appendTo()リファレンス: http://api.jquery.com/appendTo/

別の方法として、これを試すこともできます。

_$('<div />', { id: 'holdy' }).appendTo('body');
               ^
             (Here you can specify any attribute/value pair you want)
_
8
ShankarSangoli

JQueryの使用 appendTo これを試してください:

var holdyDiv = $('<div></div>').attr('id', 'holdy');
holdyDiv.appendTo('body');
5
sinemetu1
var $div = $('<div />').appendTo('body');
$div.attr('id', 'holdy');
2
Abhishek