Я только что получил и обошел проблему с LightWindow и IE7, где при загрузке страницы он выдает ошибку JavaScript в строке 444 lightwindow.js
, утверждая, что object does not support this property or method
. Несмотря на поиск различных сообщений на разных форумах, ни один из результатов Google, который я не смог найти, не нашел решения, поэтому я публикую это здесь в надежде, что это поможет кому-то / мне позже.
Многие предлагали определенный порядок файлов сценариев, но я уже использовал этот порядок (prototype, scriptaculous, lightwindow).
Вот те шаги, которые я предпринял, которые, казалось, наконец-то сработали, я пишу их здесь только в качестве записи, поскольку я не знаю и не имею времени проверить, какие именно "исправили" проблему:
- Переместил вызов lightwindow.js вниз страницы.
- Изменена строка 444:
if (this._getGalleryInfo(link.rel)) {
- Изменена строка 1157:
if (this._getGalleryInfo(this.element.rel)) {
- Наконец, я заключил (и это грязно, мои извинения) строки с 1417 по 1474 с блоком
try/catch
, поглотив исключение.
РЕДАКТИРОВАТЬ:
Я понял, что это сломало Firefox. Добавление следующего, как строка 445 теперь делает это работает - try { gallery = this._getGalleryInfo(link.rel); } catch (e) { }
Это не очень хорошее исправление, но моя страница (которая содержит ссылку на lightwindow без тега "rel", несколько ссылок на lightwindow, которые имеют теги "rel" и одну ссылку "inline") теперь отлично работает в IE7 , Пожалуйста, прокомментируйте, если у вас есть что добавить по поводу этой проблемы или проблем с / улучшением моего решения.