Помогите с событиями
Всем привет. Как то на этом форуме подсказали как запретить выполнение события вот пример.:
onclick = "this.onmouseout=null"; func(); вот моя задача. У меня есть в одном src 3 события onclick,onmuseover,onmouseout. Значит при онмауовер открывается див с картинками, при при онмаусаут див закрывается. А если кликнуть то див фиксируется пока не закроеш кнопкой. Как раз это позволяет сделать onclick = "this.onmouseout=null"; func();. Но потом при повторно наведении на <img src=""> див показывается и стопорится на метсе. Собственно вопрос. Как отменить this.onmouseout=null Я полагаю что при onmuseover сделать что-то типа this.onmouseout= myfunc(); Прав или нет. |
прав
пробуй onclick = "this.onmouseout=null"; func();достаточно onclick = "this.onmouseout=null"; |
MikhailGirshberg,
Наверное не так стоит задавать вопросы. onclick = "this.onmouseout=null"; Нужно чтобы onmouseover= "this.onmouseout = НЕ null" стал. как ему опять убрать null если уже присваивался ? |
вариант 1:
my_very_clever_func(par1, par2, par3){ ... } ... some_element.onclick=my_very_clever_func ... вариант 2: some_element.onclick=function(par1, par2, par3){ ... } |
Че-то не совсем понимаю к чему все это. Мне кажется это не решает проблему. Сейчас приведу пример кода и еще раз попробую объяснить что к чему
Вот HTML код <div id="myId" style="display:hidden"> <img src="myphotos.png"></div> <img src="icon.png" onmouseover="myFunctionOpen()" onmouseout="myFunctionClose()" onclick="myFunctionOpen()"> Вот JS код myFunctionOpen = function(){ window.getelementbyid("myId").style.display = "block"; myFunctionClose = function(){ window.getelementbyid("myId").style.display = "hiden"; Пояснение. Есть иконка при наведении на которую открывается див с фоткой, а если увести мышь то див пропадает. Задача: Как видно из примера там есть onclick при нажатии на который нужно чтобы див фиксировался и по нему можно было бы водить мышкой. Реши это вот таким способом <img src="icon.png" onmouseover="myFunctionOpen()" onmouseout="myFunctionClose()" onclick="this.onmouseout=null; myFunctionOpen()"> Тоесть на onclick поставил this.onmouseout=null; при этом див фиксируется (пока него не закроем крестиком на диве). Но!!! При повторном наведении уже не срабатывает onmouseOUT , Как сделать чтобы он опять заработал? |
Надо снова повесить обработчик на событие onmouseout.
Прочтите на досуге "События" |
Кодом если можно.
|
:-? В статье все в подробностях описано. Я уверен прочтение её очень положительно скажется на Ваших способностях программиста.
|
Спасибо конечно за статью, но я решил вопрос немного другим способом
|
Часовой пояс GMT +3, время: 04:23. |