Сбой Firefox и onscroll из greasemonkey

#javascript #events #firefox #dom #greasemonkey

#javascript #Мероприятия #firefox #dom #greasemonkey

Вопрос:

Я заметил, что скрипт greasemonkey, который я написал некоторое время назад, больше не работает, возможно, из-за того, что я сейчас использую Firefox 4 (хотя у меня нет под рукой более ранней версии Firefox, с помощью которой я мог бы проверить эту теорию).

Он выполняет следующее:

 myelm.addEventListener('scroll', fonscroll, false);
  

Раньше это работало, но теперь, похоже, происходит сбой без предупреждения. Более того, если я попробую вместо этого следующее:

 myelm.onscroll = fonscroll;
  

Я получаю следующую ошибку:

 [Exception... "Component is not available"  nsresult: "0x80040111 (NS_ERROR_NOT_AVAILABLE)"  location: "JS frame :: jar:file:///~/AppData/Roaming/Mozilla/Firefox/Profiles/wo832x2w.default/extensions/{e4a8a97b-f2ed-450b-b12d-ee082ba24781}.xpi!/components/greasemonkey.js
  

Ответ №1:

какой тип элемента myelm ? Я попытался добавить прослушиватель событий прокрутки в iframe

Комментарии:

1. Возможно, я что-то здесь упускаю, но нельзя ли прокручивать только фреймы и окна?

2. Первоначально это работало, и tbody можно было прокручивать. По-видимому, Firefox отключил поддержку этой функции. Я опубликую ответ, когда у меня будет какой-нибудь рабочий код.

Ответ №2:

Проблема решена. Оказывается, Firefox больше не позволяет мне использовать CSS для прокрутки tbody независимо от его thead . Мой неудачный компромисс заключался в том, чтобы просто периодически повторять thead — несмотря на то, что это искаженный HTML, он отображает.