2012-04-02 18 views
5

Dojo eşdeğeri $("...").text("asdf") ve $("...").text() nedir?Dojo jQuery.text işlevine eşdeğerdir?

Ayrıca jQuery işlevlerinin dojo eşdeğerlerini sağlayan bir wiki veya site var mı?

someElement.appendChild(document.createTextNode('asdf')); 

Ayrıca önceden temizlemek gerekebilir: direkt varsa

while(someElement.firstChild) someElement.removeChild(someElement.firstChild); 

mesaj geldi gelince, ben bilmiyorum

cevap

0

Sadece elemanı bir düğüm eklemek eşdeğer ama muhtemelen bir tane gerekmez. Sadece öğenin firstChild öğesinin nodeValue'unu okuyun. dojoda

dojo.query('#yourdiv')[0].lastChild.textContent = 'text'; 
var text = dojo.query('#yourdiv')[0].lastChild.textContent 
-1

Kullanım NodeList.text()

http://dojotoolkit.org/reference-guide/1.7/dojo/NodeList-manipulate.html#text

Aşağıdaki gibi kullanabilirsiniz

olduğunu.

dojo.query("#id").text("asdf"); 
var txt = dojo.query("#id").text(); 
+1

Will IE ve Chrome'da bu iş de? TextContent sadece FF ve innerText IE ve Chrome olduğunu düşündüm. Bu yüzden çapraz tarayıcı jquery.text çözümü arıyorum. – Derek

+0

@ Derek, Evet, bu IE 9 Onwards ve Chrome'dan sonraki çalışmadır. – Starx

+0

@Downvoter, Neden downvote – Starx

3

olarak benzer bir işlevi yapabilirsiniz

1

dojo/dom-prop modülünü arıyorsunuz. source'a bakarsanız, geçerli tarayıcı desteklemiyorsa, textContent özelliği için özel bir işlem vardır.

if(propName == "textContent" && !has("dom-textContent")) { 
     ctr.empty(node); 
     node.appendChild(node.ownerDocument.createTextNode(value)); 
     return node; 
    } 

Kodunuz aşağıdaki gibi görünecektir:

domProp.set(node, "textContent", "hello world!"); 

veya

domProp.get(node, "textContent");