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, время: 03:00. |