Я использую prototype.js для своего веб-приложения, и у меня все работает на Chrome, Safari и Firefox. Сейчас я работаю над совместимостью с IE8.
Как я отлаживал в IE, я заметил, что есть события Javascript, для которых я предварительно установил наблюдателя в окне, например
Event.observe(window, eventType, function () {...});
(где eventType
может быть "dom:loaded"
, "keypress"
и т.д.), и он прекрасно работает в Chrome/Safari/Firefox. Однако в IE наблюдатель никогда не срабатывает.
По крайней мере, в некоторых случаях я мог заставить это работать в IE, вместо этого поместив наблюдателя в нечто отличное от window
, например, в document
(в случае "dom:loaded"
) или document.body
(в случае "keypress"
), Тем не менее, это все методом проб и ошибок.
Есть ли какой-то более систематический способ определить, где разместить этих наблюдателей, чтобы результаты были совместимы с разными браузерами?