2010-05-10 16 views
8

Böyle bir öğe oluşturduk:Prototip kullanarak "gövdeye" eleman nasıl eklenir?

var myDiv = new Element('div'); 
myDiv.update('Hello!'); 

ben vücuda myDiv eklemek istiyorum.

Ben
$('body').insert(myDiv); 

çalıştı Ama çalışmıyor. Ayrıca, $('body') bir dizi döndürdüğünü düşünerek

'u da denedim. Bu bile işe yaramadı.

Vücuda myDiv'u nasıl ekleyebilirim?

Teşekkürler.

cevap

7

$ document.getElementById() için bir kısa yoldur, $$ daha çok yönlü prototip işlevidir. Doküman içinde (ilk) vücut elemanı erişmek için kullanın:

$$('body')[0].insert(myDiv); 
+0

İşe yaradı: Firefox rağmen nasılsa zaten) insert (yürütmek edebilmek için :) Daha fazla bilgi için

görünüyor. Teşekkürler. Belgeler “$$ (cssRule ...) -> [HTMLElement ...]' dediğinden, $$ kullanıp etiket adlarını kullanmazken yalnızca css sınıfı isimleri verebileceğimi düşündüm! Aptal hissediyorum: D – Senthil

+6

'$$ ('vücut') [0]' "çalışır", ancak verimsiz ve gereksizdir. Bunun yerine Pekka'nın önerdiği gibi '$ (document.body)' kullanın. Bu tamamlamak için – npup

+0

: '$ (document.body) .insert (myStuff);' – Sliq

15

Nasıl

$(document.body).insert(myDiv); 

hakkında?

farklı olarak jQuery, Prototip, $('body') id body sahip eleman getirir.

+0

gitmek için yoldur Merhaba, (gövde) .insert (myDiv) çalışmıyor. Bir şey mi kaçırdım? – Senthil

+0

@Senthil özür dileriz - bu belgeyi 'olmalıdır'. Her neyse, $$ 'iyi çalışıyor gibi görünüyor, bu yüzden sıralı olduğunu varsayalım. –

1

$$ ('body') Pekka, önce Prototype'ın insert() yöntemini kullanmak mümkün Prototype'ın DOM uzantılı document.body uzatmak gerekir dediği gibi [0]

İlgili konular