0 голосов
спросил от в категории JavascriptCSSHTML
Вы используете createTextNode , который создает только узел text , без элемента HTML.

Похоже, вы хотите заменить старый HTML-элемент на новый HTML, содержащий цветные слова. Я не вижу, как вы обращаетесь к элементам из вашего JavaScript, но что вы можете сделать, в основном это:
var element = ...; // if you want to get the element by ID: document.getElementById("your-element"); var originalHtml = element.innerHTML; var newHtml = originalHtml.replace(_word, _word.fontcolor("red")); element.innerHTML = newHtml;

Обратите внимание, что .replace заменяет только первое вхождение слово. Если вы хотите заменить все вхождения, вы можете использовать регулярное выражение:
var newHtml = originalHtml.replace(new RegExp(_word, "g"), _word.fontcolor("red")); // "g" means "global"

Также обратите внимание, что установка свойства innerHTML вызывает элемент чтобы потерять все обработчики событий. Поэтому, если у вас есть обработчики событий, привязанные к вашим «li» -элементам, я рекомендую не помещать ваш текст сразу в li-тег, а в другой тег в теге li, например: lt; li gt; lt; lt lt;/span gt; lt;/li gt; .

Пожалуйста, войдите или зарегистрируйтесь чтобы ответить на этот вопрос.

0 голосов
ответил от
Проверить это и адаптировать:
<!DOCTYPE html> <html> <body> <p id="demo">Visit CodeProject!</p> <button onclick="changeSubStringColor()">Try it</button> <script> function changeSubStringColor() {     var str = document.getElementById("demo").innerHTML;      var res = str.replace("CodeProject", "<span style='color:red'>CodeProject</span>");     document.getElementById("demo").innerHTML = res; } </script> </body> </html>

Категории

Добро пожаловать на сайт DraftingCode Q&A, где вы можете задавать вопросы и получать ответы от других членов сообщества.

Похожие вопросы

0 голосов
0 ответов
спросил 01 Янв, 70 от MacFirst (120 баллов) в категории JavascriptCSSHTML
0 голосов
0 ответов
0 голосов
0 ответов
спросил 01 Янв, 70 от MacFirst (120 баллов) в категории JavascriptCSSHTML
0 голосов
0 ответов
...