Что такое эквивалент Dojo для $("...").text("asdf")
и $("...").text()
?Доджо эквивалент функции jQuery.text?
Также есть wiki или сайт, который предоставляет эквиваленты dojo функций jQuery?
Что такое эквивалент Dojo для $("...").text("asdf")
и $("...").text()
?Доджо эквивалент функции jQuery.text?
Также есть wiki или сайт, который предоставляет эквиваленты dojo функций jQuery?
Просто добавьте узел к элементу:
someElement.appendChild(document.createTextNode('asdf'));
Вам также может потребоваться очистить его заранее:
while(someElement.firstChild) someElement.removeChild(someElement.firstChild);
Что касается получения текста, я не знаю, есть ли прямая эквивалент, но, вероятно, вам это не понадобится. Просто прочитайте nodeValue
элемента firstChild
.
Использование может сделать это как
dojo.query('#yourdiv')[0].lastChild.textContent = 'text';
var text = dojo.query('#yourdiv')[0].lastChild.textContent
аналогичную функцию в додзё является NodeList.text()
http://dojotoolkit.org/reference-guide/1.7/dojo/NodeList-manipulate.html#text
Вы можете использовать, как показано ниже.
dojo.query("#id").text("asdf");
var txt = dojo.query("#id").text();
Вы ищете модуль dojo/dom-prop. Если вы посмотрите на source, есть специальная обработка для свойства textContent, если текущий браузер не поддерживает его.
if(propName == "textContent" && !has("dom-textContent")) {
ctr.empty(node);
node.appendChild(node.ownerDocument.createTextNode(value));
return node;
}
Ваш код будет выглядеть следующим образом:
domProp.set(node, "textContent", "hello world!");
или
domProp.get(node, "textContent");
Будет ли это работать в IE и Chrome, а? Я думал, что textContent был только FF, а innerText был IE и Chrome? Вот почему я ищу кросс-браузерное jquery.text решение. – Derek
@Derek, Да, это работа от IE 9 Onwards и Chrome и далее. – Starx
@Downvoter, почему downvote – Starx