| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > Как при описании объекта описать событие для |
| Автор: DEER 1.8.2007, 13:08 | ||
| День добрый… Пытаюсь написать объетк, один из элементов которого будет текстовое поле с формы… Мне нужно в конструкторе прикрутить к полю событие – функцию с параметрами Пробую вот так
Подскажите пожалуйста как такое правильно делать... Или как можно использовать в функции test элемент oDiv из экземпляра MyObject? |
| Автор: Zeroglif 1.8.2007, 13:35 |
| Не видно, как создаётся объект, не виден html. Из того, что видно только просится var перед oDiv, а так... код рабочий, попробуй проверить в функции MyObj, в какой момент потерялся oDiv. У меня всё работает. |
| Автор: DEER 1.8.2007, 13:41 | ||||
Создается вот так
такс... код действительно рабочий получается.... Ща посмотрел - сравнил со своим кодом.. есть разница...
то есть oDiv не просто переменная, а тоже элемент объекта |
| Автор: Zeroglif 1.8.2007, 14:01 |
this в javascript летающий, то есть связывается динамически, зависит от выражения вызова. В функции onkeydown значением this является ссылка на инпут, свойств с именем oDiv у инпута нет, отсюда - undefined. Вариант в лоб - завести такое свойство инпуту или отказаться от this (как это было в предыдущем примере, где замыкание захватило лексическое окружение). Ну, или пересмотреть логику, например, передать в test id дива, а та уже этот элемент сама достанет.... |
| Автор: DEER 1.8.2007, 14:07 |
| Спасибо. Пока ждал ответа сам стал задумываться а нужно ли мне oDiv делать елементом объекта... он же у меня только создается и нигде больше не используется. Тщ есть oDiv вполне сможет быть обыкновенной переменной. |