#javascript #html
#javascript #HTML
Вопрос:
<ul>
<li>
<span class="name">Tortilla de blé</span>
</li>
</ul>
Это исходный код. Мне нужно изменить цвет фона только текста в теге.
Для этого я использовал свойство css background-color. Но это меняет цвет всего элемента списка.
я должен изменить цвет фона только с помощью javascript.
var ea = document.getElementsByClassName('name');
for(var i = 0; i < ea.length; i )
ea[i].style.backgroundColor = "yellow";
(Изменен старый скрипт, поскольку он был неверным, ошибочно написан)
Мой результат:
Ожидаемый результат: что я мог сделать, чтобы просто выделить текст в теге, а не весь тег.
Я добился ожидаемого результата, отредактировав исходный код, как показано ниже:
<ul>
<li>
<span class="name"><font style="bakground-color:yellow">Tortilla de blé</font></span>
</li>
</ul>
Путем встраивания тега шрифта в текст, что невозможно с помощью JavaScript.
Я сделал это с помощью функции проверки элементов в Google Chrome
Комментарии:
1. Уточнение: на рисунке «ожидаемый результат» JS применяется только к первому элементу списка?
Ответ №1:
Ваш пример js недействителен и ничего не должен делать…
Вам нужно установить стиль для каждого элемента span;
var ea = document.getElementsByClassName('name');
for(var i = 0; i < ea.length; i )
ea[i].style.backgroundColor = "yellow";
Комментарии:
1. хорошо, но мне нужно выделить только текст, а не весь тег… возможно ли это?
2. Это будет; jsfiddle.net/pe4bn если только span не наследует стиль, который переопределяет его поведение по умолчанию, например, display:block
3. club-sandwich.net/recettes/tuna-wrap-256.php Проверьте эту страницу. Я создал свой пример с этой страницы.
4. Я пытаюсь выделить некоторый текст на веб-странице, которая относится к другому домену.
5. Установка «background: yellow;» <span> для элементов в инспекторе Chrome отлично работает на вашем club-sandwich.net страница — так что она также должна быть настроена в JavaScript.
Ответ №2:
Пробовал с помощью jQuery, http://jsfiddle.net/sameerast/gT9eh /
Комментарии:
1. club-sandwich.net/recettes/tuna-wrap-256.php Проверьте эту страницу. Я создал свой пример на этой странице
Ответ №3:
Как объяснено выше — ваш JS недействителен. Для начала имя функции ‘getElementsByClassName’, а не ‘getElementByClaassName’.
Затем вам нужно, чтобы он перебирал элементы и устанавливал их свойства по отдельности. jQuery предоставит вам хороший ярлык, описанный Sameera.
Ответ №4:
пример от Алекса К. :
из-за ошибки мне пришлось добавить 2 скобки :
var ea = document.getElementsByClassName('name');
for(var i = 0; i < ea.length; i )
{ea[i].style.backgroundColor = "yellow";}