Две функции — bind и listen. Функция bind предназначена для создания callback-функции, чтобы получить возможность использования внутренних методов объекта в обработке событий. Функция listen предназначена для кроссбраузерного назначения обработчика события объекту.
Две примитивные функции
27 декабря 2007 года, 22:41- Теги:
- javascript
- программирование
Мнения (11)
Все эти хорошие люди уже прокомментировали запись. Поделитесь собственным мнением, расскажите, что вы думаете о поставленной проблеме, задаче, озвученных мыслях.
-
28 декабря 2007 г.09:08
в listen можно дописать else return false.
Методически это будет красивее. Да и мало ли какой браузер попадется. -
28 декабря 2007 г.09:54
Методически красивее - согласен. Сейчас если не то и не это, будет просто возвращён null.
-
28 декабря 2007 г.16:46
а если то или это, что будет возвращено?
-
28 декабря 2007 г.16:51
Понял, к чему вы клоните, товарищ.
-
28 декабря 2007 г.17:11
пока что мне это видится вот так (хоть и чувствую, что это не идеально):
[code=js]
function listen(object, hevent, hfunc){
var result = false;
if(object.addEventListener){
object.addEventListener(hevent, hfunc, false);
result = true
}
else{
if(object.attachEvent){
object.attachEvent('on' + hevent, hfunc);
result = true
}
}
return result
}
[/code] -
28 декабря 2007 г.17:16
Не обязательно возвращать результат. Есть другие способы узнать, назначился ли верно обработчик. Причём, иные способы установки обработчика не существуют, а оставшиеся 3% пользователей текстовых браузеров мы гоним в тундру.
-
28 декабря 2007 г.17:18
но было бы удобно исползовать что-то типа if(listen...
-
28 декабря 2007 г.17:20
Зачем? Обработчик назначается всегда без проблем. Для всех браузеров. Никаких проблем никогда не возникает.
-
30 декабря 2007 г.13:52
тогда else return false действительно имеет только методическое значение. Можно убрать, наверно
-
30 декабря 2007 г.15:36
Хорошо.
-
28 декабря 2007 г.17:16
Подсветка в комментариях не работает, BB-кодов нет ;)
Я тоже знаю!
Для обращения к человеку используйте символ @, после которого следует имя того, к кому обращаетесь (пробелы заменяются на знак подчёркивания). Если вам интересно, можете подписаться на комментарии по RSS или по эл. почте. Ведите себя достойно, вы же не роботы, правда?
Вы можете использовать следующие XHTML-элементы в разметке комментария: strong, em, span[class=crossline], a[href=uri], code[type=язык], blockquote, ul и ol. В качестве языка кода может быть указан, например, javascript или css.