Возвращает заголовок кнопки, на которую наведен указатель мыши

#javascript

#javascript

Вопрос:

Я просто хочу, чтобы немного javascript возвращало заголовок элемента button, на который пользователь наводит курсор. Я не хочу использовать getElementById(...) , потому что я создаю функцию, которая работает без ссылки на элемент, но с его идентификатором. Возможно ли это?

Большое спасибо :).

Комментарии:

1. Как вы ожидаете получить заголовок из элемента, не используя элемент?

2. Когда вы говорите «заголовок», вы имеете в виду value , а когда вы говорите «кнопка», вы имеете в виду <button>...</button> , верно?

3. Почему бы вам не прикрепить событие наведения курсора мыши к кнопкам, которое установит некоторую переменную с ее заголовком? Затем вы можете использовать эту переменную.

Ответ №1:

Вы можете использовать this который ссылается на текущий элемент следующим образом:

 <input type="button" title="mytitle" onMouseOver='alert(this.title);'>
  

Рабочий пример

Ответ №2:

Js

 function showTitle(element){
  alert( element.getAttribute('title') );
}
  

HTML

 <a href="#" title="I am the title" onmouseover="showTitle(this)">hover me</a>
  

демонстрация на http://jsfiddle.net/gaby/WKqMq /

Ответ №3:

Рассмотрим этот HTML:

 <input type="button" value="Button 1" />
<input type="button" value="Button 2" />
<input type="button" value="Button 3" />
<input type="button" value="Button 4" />
<input type="button" value="Button 5" />

<div id="txt"></div>
  

И ваш JavaScript, который будет работать с любой кнопкой, присутствующей на текущей странице

 $("input[type=button]").bind("hover", function() {
    $("#txt").html($(this).val());
});
  

Вы также можете рассмотреть ЖИВОЙ пример

Комментарии:

1. Я нигде не видел, чтобы он это говорил! Это самый чистый код, в котором может быть достигнуто такое требование. Это мешает — чего лучшего вы можете ожидать?

Ответ №4:

Вы также могли бы захватить каждую кнопку с помощью:

 var buttons = document.getElementsByTagName("button");

for (var i=0; i < buttons.length; i  )
{ 
  buttons[i].onmouseover = function()
  {
    alert(this.title);
  }
}
  

Пример: http://jsfiddle.net/2LP66/4 /

Это предупредит заголовок кнопки при наведении курсора мыши на любую кнопку на странице.

Функция onmouseover будет запускаться только при наведении курсора мыши на кнопку, но, конечно, вам не обязательно использовать оповещение, вы также можете сохранить заголовок в какой-то более глобальной области и использовать это там, где вы хотите использовать заголовок