Заполните текстовую строку атрибутом title

0

Мне нужна информация, отображаемая в качестве атрибута title, чтобы отражать в текстовой строке, например, в нижеследующем, я хотел бы, чтобы "Сделать эту строку" отображаться, а не "Что является текущим".

<table>
<tr>
<td class="ellipsis" title="make this the string">What is current</td>
</table>

К сожалению, единственное, что я смог найти, делает обратное:

$('.ellipsis').each(function() {
$(this).prop('title', $(this).text());
});

В вышесказанном, текущий текст заменит название, любая помощь или руководство будут очень признательны.

Спасибо!

Вот скрипка, если она помогает http://jsfiddle.net/jelane20/2U9S8/

Теги:

3 ответа

1
Лучший ответ

Проблема с вашим существующим кодом заключается в том, что вы устанавливаете свойство title как эквивалентное тексту элемента, используя метод prop(), вместо того, чтобы текстовый контент был эквивалентен свойству title.

Вместо этого я бы предложил:

$('td.ellipsis').text(function(){
    return this.title;
});

Демо-версия JS Fiddle.

Рекомендации:

  • 1
    Даже лучше чем мой!
  • 0
    Вау! Большое спасибо! :)
Показать ещё 1 комментарий
0

Чтобы обновить заголовок, вы будете использовать .attr вместо prop. Попробуй это:

$(this).text($(this).attr('title'));

Используя это, вы можете обновить значение title атрибута, получив собственный текст.

0

У вас просто код назад. Попробуй это:

$('.ellipsis').each(function() {
    $(this).text($(this).prop('title'));
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню