Javascript-магистрам
О великие Javascript-магистры )) Нормально ли я реализовал галерею изображений + тултип на уровне знаний до статьи "Делигирование событий", что в теме "События, взаимодействие с посетителем"( http://learn.javascript.ru/event-delegation ) ?)) http://learn.javascript.ru/play/hfR3Cb
|
лично я, вроде, косяков серьёзных не нашёл, только идентификация косячная - лучше помечать картинки своим тегом (добавить случайный класс), чтобы не цеплять чужие.
но тут этого не нужно было делать :) ну и по мелочи, вроде такого : span.onclick=function(e){ ... var largeImg=document.getElementById('largeImg'); ... } largeimg лучше закешировать и не искать одно и то же при каждом клике |
Логично)) Спасибо за помощь:)
|
VladShestakov999,
в старых ИЕ это работать не будет var target = e.target || event.srcElement; так как на e.target выдаст ошибку и проверка не будет выполнена, а так работать будет var target = event.srcElement || e.target ; так же нельзя делать так (точнее делать можно но работать не будет, не помню точно где, вроде в том же старом ие или лисе, вроде в лисе) e = e || window.event; но можно так function(evt){ var e = evt || window.event; |
Цитирую учебник:
Цитата:
|
VladShestakov999,
я читал эту книгу, и в свое время я наступил на эти грабли, не верите, пробуйте сами <!DOCTYPE HTML> <html> <head> </head> <body> <div id='test'> <span>click span(does not work in old IE)</span> </div> <div id='test1'> <span>click span( work in old IE)</span> </div> <script> document.getElementById('test').onclick = function (e) { var target = e.target || event.srcElement; alert('work') } document.getElementById('test1').onclick = function (e) { var target = event.srcElement || e.target;// меняем местами alert('work') } </script> </body> </html> |
VladShestakov999, второе так же можете проверить(в последней версии лисы , бага нет но в старых есть)...
|
cyber,
Для начала нужно получить window.event для ie. А потом уж проверять на target/srcElement |
zebra,
в ие event это свойство window. |
Ну и правильно)) С чего бы ему работать? В учебнике четко написано:
Цитата:
e=e || window.event; var target = e.target || e.srcElement; Попробуйте, через IE tester, например: http://learn.javascript.ru/play/Ah6tz А по поводу FF не знаю, возможно вы и правы. Стоит проверить |
Часовой пояс GMT +3, время: 04:12. |