Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> в IE не могу получить ссылку на DOM, При возникновении события 
:(
    Опции темы
rcdimon
Дата 15.5.2007, 22:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 766
Регистрация: 12.7.2004
Где: Москва

Репутация: нет
Всего: 2



Всем привет. 


У меня есть элемент DIV. Мне нужно присоединить к нему обработчик событий. Я пользуюсь prototype.js и делаю это так
Код


function myObject(DOMelParent, myID){
  this.Snode = Builder.node('div', {'class' : this.CSSprefix + 'selectArea', 'id' : myID});
  this.Snode.ClassLink = this;
  $(DOMelParent).appendChild(this.Snode);

  // присоединение события
   Event.observe(this.Snode, 'mousedown', this.EventsMouse, false);



 // Обработчик события
  this.EventsMouse = function(EventObject){
                    // Тут код обработчика
    }
}


this.Snode.ClassLink = this;
Это я сделал для того чтобы когда произошло событие с этим VID'ом я мог бы узнать какому классу он пренадлежит и вызвать соответствующий метод.

в Опере и FF все работает на ура. Ссылку на элемент DOM породивший событие получаем по this  в обработчике событий

А в ИЕ ну никак не могу ( this там непонятно на что указывает


Как можно узнать какой DOM элемент породил событие, его ID или ссылку на него

Заранее спасибо.


Это сообщение отредактировал(а) rcdimon - 15.5.2007, 22:47
PM MAIL ICQ   Вверх
vasac
Дата 16.5.2007, 13:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



Код

Event.observe(this.Snode, 'mousedown', (function(e) {this.EventsMouse(e || window.event);}), false);

?
PM WWW   Вверх
rcdimon
Дата 18.5.2007, 11:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 766
Регистрация: 12.7.2004
Где: Москва

Репутация: нет
Всего: 2



не... ошибки во всех браузерах...

в Опере и ФФ- что не может есессно добрать до объекта.. так как this у обработчика события на него не указывает.

А IE как-то все же добирается до MouseEvent, но нам все равно не может найти ClassLink  smile 
PM MAIL ICQ   Вверх
vasac
Дата 18.5.2007, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1060
Регистрация: 4.5.2006

Репутация: 13
Всего: 36



Код

var _this = this;
Event.observe(this.Snode, 'mousedown', (function(e) {_this.EventsMouse(e || window.event);}), false);
?
PM WWW   Вверх
rcdimon
Дата 18.5.2007, 22:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 766
Регистрация: 12.7.2004
Где: Москва

Репутация: нет
Всего: 2



от этого ничего не изменилось...
PM MAIL ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0416 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.