Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 29.04.2012, 19:45
Интересующийся
Отправить личное сообщение для andrew_F Посмотреть профиль Найти все сообщения от andrew_F
 
Регистрация: 18.03.2012
Сообщений: 20

можно ли на объект повесить два события одновременно?
...например, при наведении мышкой на этот текст фон страницы поменяется:

<a href="http://www.mail.ru" onMouseOver="document.bgColor='#FFAACC';
return true">меняется фон страницы</a>

А можно повесить на этот же текст-ссылку ещё и событие onMouseOver??
Я пробовал, не получилось,срабатывает только "последняя" функция может синтаксис неверный а может быть так в принципе нельзя?:

<a href="http://mail.ru" onMouseOver="document.bgColor='#FFAACC' onMouseOut=document.bgColor='#00FF00'" onMouseOut="document.bgColor='#00FF00'"> меняется фон страницы</a>

Подскажите, как поступить в данном случае? Не хотелось бы создавать отдельный текст для наведения мышки, отдельно для щёлканья, отдельно для увода мышки с текста... Все события хотелось бы на одном объекте размещать
Ответить с цитированием
  #2 (permalink)  
Старый 29.04.2012, 20:05
Интересующийся
Отправить личное сообщение для andrew_F Посмотреть профиль Найти все сообщения от andrew_F
 
Регистрация: 18.03.2012
Сообщений: 20

С ума сойти как вы были правы!!!
оказывается ошибка была в синтаксисе, надо было так:

<a href="http://mail.ru" onMouseOver="document.bgColor='#FFAACC' " onMouseOut="document.bgColor='#00FF00' ">меняется фон страницы</a>

"Может ли Ланцелот мечом убить дракона?" - "Может"....
Но не Ланцелот
И не мечом
и не дракона
и не убить...
Ответить с цитированием
  #3 (permalink)  
Старый 29.04.2012, 20:11
Аватар для Mirror13
Новичок на форуме
Отправить личное сообщение для Mirror13 Посмотреть профиль Найти все сообщения от Mirror13
 
Регистрация: 14.04.2012
Сообщений: 9

Лучше не размещать код прямо в тегах - это очень, очень плохо. Так же как атрибут bgColor.

А ошибка вот тут:
<a onMouseOver="document.bgColor='#FFAACC' onMouseOut=document.bgColor='#00FF00'">...</a>

Это все, как получается, один атрибут. Соответственно, MouseOver не срабатывает из-за синтаксической ошибки, а единственно правильно описанный MouseOut (последний) - срабатывает.
Ответить с цитированием
  #4 (permalink)  
Старый 29.04.2012, 20:20
Интересующийся
Отправить личное сообщение для andrew_F Посмотреть профиль Найти все сообщения от andrew_F
 
Регистрация: 18.03.2012
Сообщений: 20

Лучше не размещать код прямо в тегах - это очень, очень плохо.

а как же тогда размещать посоветуете? Через id??
А сам скрипт, получается, надо писать в конце страницы, перед </body>, чтобы DOM сформировался?
Ответить с цитированием
  #5 (permalink)  
Старый 29.04.2012, 20:53
Аватар для Mirror13
Новичок на форуме
Отправить личное сообщение для Mirror13 Посмотреть профиль Найти все сообщения от Mirror13
 
Регистрация: 14.04.2012
Сообщений: 9

Если объемы большие, лучше писать в отдельных JS-файлах.

Сейчас часто используется jQuery, там проблема с формированием DOM решается просто: запуск кода по событию готовности документа делается так:
$(function() {
//Код, который запустится после того, как все прогрузилось
})


Без jQuery можно сделать примерно так (возможно, я ошибся в названии событий):
if (window.addEventListener)
    window.addEventListener('load', loadHandler);
else if (window.attachEvent)
    window.attachEvent('onload', loadHandler);
else
    window.onload = loadHandler; //Переопределит все остальные обработчики, добавленные так

function loadHandler() {
    alert('Страница загрузилась');
}
Ответить с цитированием
  #6 (permalink)  
Старый 30.04.2012, 14:51
Интересующийся
Отправить личное сообщение для andrew_F Посмотреть профиль Найти все сообщения от andrew_F
 
Регистрация: 18.03.2012
Сообщений: 20

Спасибо! Ваши ответы мне очень помогли
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Можно ли узнать назначенные события MainBuh Events/DOM/Window 4 17.08.2010 11:22
можно ли вывести на печать объект Polkan Events/DOM/Window 7 28.06.2010 23:01
Можно ли получить объект без названия SunnyDay Общие вопросы Javascript 5 25.02.2010 19:26
Два accordion на сайт, можно как то сделать? Vitaly jQuery 3 09.11.2009 11:37
Можно ли одновременно изменить фон и текст в поле? Bad Request Events/DOM/Window 12 25.09.2008 23:10