Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 30.09.2009, 01:00
Аватар для Раман
Аспирант
Отправить личное сообщение для Раман Посмотреть профиль Найти все сообщения от Раман
 
Регистрация: 22.09.2009
Сообщений: 46

перехват событий
Здравствуйте, у меня такая проблема. Не работает в IE captureEvents(Event.событие)
что делать?
Ответить с цитированием
  #2 (permalink)  
Старый 30.09.2009, 03:02
Аватар для Riim
Рассеянный профессор
Отправить личное сообщение для Riim Посмотреть профиль Найти все сообщения от Riim
 
Регистрация: 06.04.2009
Сообщений: 2,379

Сообщение от Раман
что делать?
устроить протест у офиса мелкомягких.
Ответить с цитированием
  #3 (permalink)  
Старый 30.09.2009, 22:59
Роман
 
Сообщений: n/a

Лучше убить била гейтса! Может тогда ихний браузер начал бы придерживаться стандартов
Ну а реально кто знает как сделать что бы работало в ие?
Ответить с цитированием
  #4 (permalink)  
Старый 01.10.2009, 10:31
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

Сообщение от Роман
Ну а реально кто знает как сделать что бы работало в ие?
В ишаке реализован немного другой механизм. Я его ковырял, но так и не понял, как он работает. Может у кого получиться разобраться:

Метод setCapture включает перехват всех событий, генерируемых мышью. Если его аргумент flag равен true (принято по умолчанию), то данный элемент будет перехватывать все события мыши в пределах всего документа. Если аргумент равен false, то данный элемент будет перехватывать только события мыши от содержащихся внутри него элементов. Включение перехвата событий мыши запрещает выбор текста и перетаскивание (drag-and-drop) в окне обозревателя.

Метод releaseCapture отключает перехват событий мыши, включенный методом setCapture.

Это методы DOM-элемента.
Ответить с цитированием
  #5 (permalink)  
Старый 01.10.2009, 12:43
Аватар для Раман
Аспирант
Отправить личное сообщение для Раман Посмотреть профиль Найти все сообщения от Раман
 
Регистрация: 22.09.2009
Сообщений: 46

Значит только событие мыши он перехватыает? А мне нужно что бы перехватывало собтие OnContextMenu. А оно еще срабатыает с клавиши клаиатуры appKey
Ответить с цитированием
  #6 (permalink)  
Старый 01.10.2009, 13:01
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

По поводу контекстного меню - насколько я знаю, кроссбраузерно его нельзя обработать.
Ответить с цитированием
  #7 (permalink)  
Старый 01.10.2009, 13:06
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

Сообщение от Раман
Значит только событие мыши он перехватыает?
Непонятно, что он перехватывает... 8-ой ишак, если в setCapture передать true, то он не только перехватывает в пределах body, но и вообще во всём окне
Т.е. если мы напишем так:
var capture=function(){
alert('Fuck');
document.body.setCapture(true);
}
document.body.onclick=capture;
document.body.setCapture(true);

, то всё окно окужется недоступным. Вернуть его можно только сменив фокус на другое (alt+tab, например). Но это до первого клика по body...

После первого перехвата - перехват отменяется.
Ответить с цитированием
  #8 (permalink)  
Старый 01.10.2009, 15:02
Аватар для Раман
Аспирант
Отправить личное сообщение для Раман Посмотреть профиль Найти все сообщения от Раман
 
Регистрация: 22.09.2009
Сообщений: 46

Спасибо дружище!!! Я разобрался и сделал то что хотел, вот только осталась одна проблемка. В опере на событие oncontextmenu нету некакойревкции так что перехватывать в ней нечего не получится. Я вот предумал оперу поймать по другому перехватом тех действий точнее тех клавишь которые отвечают за контекстное меню то есть правая кнопка мыши и клавиша appKey. Правую кнопку я уже поймал а вот теперь не знаю как с клавишей на клавиатуре поступить гуглил но так и не смог найти какое событие занее отвечает. У тебя нет случайно некакихидей по этому поводу?
Ответить с цитированием
  #9 (permalink)  
Старый 01.10.2009, 15:11
Аватар для e1f
e1f e1f вне форума
Профессор
Отправить личное сообщение для e1f Посмотреть профиль Найти все сообщения от e1f
 
Регистрация: 03.04.2009
Сообщений: 1,263

В Опере с контекстным меню все плохо:
1. Юзер в настройках должен выставить "разрешить перехват правой кнопки" (по умолчанию -- нельзя).
2. Контекстное меню все равно будет появлятся.
Ответить с цитированием
  #10 (permalink)  
Старый 01.10.2009, 15:11
Аватар для B~Vladi
Модератор Всея Форума
Отправить личное сообщение для B~Vladi Посмотреть профиль Найти все сообщения от B~Vladi
 
Регистрация: 14.05.2009
Сообщений: 4,022

По поводу oncontextmenu в опере - в настройках есть пункт "разрешать контроллировать правую кнопку мыши", который по-умолчению отключен и вряд ли включен у кого-то.

По поводу клавиши appKey - что конкретно надо?! Незнаешь её код?! Я тоже
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Обработка событий на динамически созданных объектах Alexey_R jQuery 28 15.02.2017 15:28
Кроссбраузерное навешивание событий на динамический элемент Pula Events/DOM/Window 5 02.07.2009 15:02
Перехват координат курсора мыши 1 раз в секунду Бондя Events/DOM/Window 16 20.01.2009 14:44
Модели событий partyzan Общие вопросы Javascript 2 30.04.2008 20:48