Программирование на jquery
Anonymous
Замена внутреннего текста на ошибку innerhtml - [Object htmlspanelement]
Сообщение
Anonymous » 06 июн 2025, 23:06
Я получаю китайский контент от API и использую специальный шрифт для этого языка. Но некоторые имена в этом контенте имеют буквы A-za-Z0-9, и для них я хочу использовать шрифт "Монтсеррат". Теперь я пишу пролет вокруг этих слов, но браузер отображается: < /p>
Код: Выделить всё
打扰一下。打扰一下。[object HTMLSpanElement] [object HTMLSpanElement] 打扰一下。打扰一下。
< /code>
Это то, что я хочу: < /p>
打扰一下。打扰一下。51612 Hello 打扰一下。打扰一下。
< /code>
Здесь часть JS: < /p>
document.addEventListener("DOMContentLoaded", () => {
const regex = /[0-9A-Za-z]+/g;
var textElements = document.querySelectorAll(".vce-post-description--excerpt");
for (var i = 0; i < textElements.length; i++) {
console.log("Found: "+textElements.length);
if (textElements[i].innerText.match(regex)) {
var foundString = textElements[i].innerText.match(regex).toString();
console.log("Change: "+foundString);
let foundArray = foundString.split(",");
foundArray.forEach(changeInnerText);
}
}
function changeInnerText(item) {
var tempElement = document.createElement('span');
tempElement.style.fontFamily = "Montserrat";
tempElement.innerHTML = item;
textElements[i].innerText = textElements[i].innerText.replace(item, tempElement);
}
console.log("Done");
})
и вот JSFiddle.
Подробнее здесь:
https://stackoverflow.com/questions/750 ... ment-error
1749240368
Anonymous
Я получаю китайский контент от API и использую специальный шрифт для этого языка. Но некоторые имена в этом контенте имеют буквы A-za-Z0-9, и для них я хочу использовать шрифт "Монтсеррат". Теперь я пишу пролет вокруг этих слов, но браузер отображается: < /p> [code]打扰一下。打扰一下。[object HTMLSpanElement] [object HTMLSpanElement] 打扰一下。打扰一下。 < /code> Это то, что я хочу: < /p> 打扰一下。打扰一下。51612 Hello 打扰一下。打扰一下。 < /code> Здесь часть JS: < /p> document.addEventListener("DOMContentLoaded", () => { const regex = /[0-9A-Za-z]+/g; var textElements = document.querySelectorAll(".vce-post-description--excerpt"); for (var i = 0; i < textElements.length; i++) { console.log("Found: "+textElements.length); if (textElements[i].innerText.match(regex)) { var foundString = textElements[i].innerText.match(regex).toString(); console.log("Change: "+foundString); let foundArray = foundString.split(","); foundArray.forEach(changeInnerText); } } function changeInnerText(item) { var tempElement = document.createElement('span'); tempElement.style.fontFamily = "Montserrat"; tempElement.innerHTML = item; textElements[i].innerText = textElements[i].innerText.replace(item, tempElement); } console.log("Done"); }) [/code] и вот JSFiddle. Подробнее здесь: [url]https://stackoverflow.com/questions/75046981/replacing-innertext-with-an-innerhtml-object-htmlspanelement-error[/url]