我試圖將多個音頻標籤附加到使用jQuery
文檔的身體:被追加兩次jQuery的唯一附加最後一項
$(function() {
var a = $("<div/>").text("hello");
$("body").append(a);
a.text("world");
$("body").append(a);
});
爲什麼心不是var a;
?我會至少期待「世界」出現兩次(我明白我覆蓋「你好」)。
我試圖將多個音頻標籤附加到使用jQuery
文檔的身體:被追加兩次jQuery的唯一附加最後一項
$(function() {
var a = $("<div/>").text("hello");
$("body").append(a);
a.text("world");
$("body").append(a);
});
爲什麼心不是var a;
?我會至少期待「世界」出現兩次(我明白我覆蓋「你好」)。
這是因爲a
變量中的元素已經附加到body
,所以第二行不會引起任何更改。
如果要兩個元素所附,則需要手動創建第二或clone
第一個:
$(function() {
var a = $("<div/>").text("hello");
$("body").append(a);
a.text("world");
$("body").append(a.clone());
});
基本上你已經從一個實例的可變
例如插入一個div: http://jsfiddle.net/kdKV8/4/
你可以嘗試克隆它..的clone()
$(function() {
var a = $("<div/>").text("hello");
$("body").append(a.clone());
a.text("world");
$("body").append(a);
});
這可能是更容易...
$('body').append($('<div/>').text('Hello'), $('<div/>').text('World'));
你也可以嘗試下面的代碼
$(function() {
$("body").append($("<div/>").text("hello"));
$("body").append($("<div/>").text("world"));
});
類似於:'a.clone(true).text(「world」)。appendTo(「body」);' - 這裏你去:http://jsfiddle.net/c9JyW/ – tymeJV
所以jquery保持跟蹤已經附加了哪些元素?它保留了這個緩存嗎? –
@Mike_G不,它重複'append',但元素已經放置在它的位置,所以它看起來什麼都沒有發生。 –