С JQuery при загрузке документа я пытаюсь выбрать каждый <img>
и дать ему новый атрибут title
и установить его равным значению атрибута alt
. title
- это то, что должно появиться во всплывающей подсказке, когда пользователь нависает над элементом. Используя консоль, я, кажется, могу эффективно выбирать каждый элемент, но что-то кажется неправильным, когда я все это собираю.Как использовать JQuery для изменения значения одного атрибута html равным значению другого атрибута?
HTML-:
<ul class="list">
<li><img href="#" src="url" data-toggle="tooltip" data-placement="right" alt="first-tooltip"></li>
<li><img href="#" src="url" data-toggle="tooltip" data-placement="right" alt="second-tooltip"></li>
<li><img href="#" src="url" data-toggle="tooltip" data-placement="right" alt="third-tooltip"></li>
</ul>
JS:
$(document).ready(function(){
$('[data-toggle="tooltip"]').tooltip(); //enable tooltips
$('.list li').children().each(function(){ //perform function on each <a>
var thisAltText = $(this).attr('alt'); //select the alt value
$(this).attr('title', thisAltText); //set title value to equal alt value
});
});
Как вы можете видеть, это не работает: http://codepen.io/shawnmurtagh/pen/ZpVgkz
FYI - Я использую .children()
, потому что мне нужно выбрать разные элементы списка в моем фактическом проекте.
Вы имеете в виду '$ (это)' вместо '$ ('это')'? – Li357
'alt' не является допустимым атрибутом на' ', между прочим. Вы можете просто исправить свой HTML. –
Да, спасибо - все равно, похоже, не работает. – smurtagh