2009-03-17 3 views
2

У меня есть страница, которая использует немного jQuery и эффект под названием «kwick» - на моей странице с образцами, размещенной на http://www.batsumaru.com/main.html, она отлично работала во всех браузерах, без проблем. Но когда фактический код был создан в http://www.batsumaru.com, Internet Explorer показывает ошибку сценария (объект не поддерживает).Проблема с JavaScript JavaScript?

Я старался изо всех сил отлаживать, но не мог понять, что происходит, код кажется идентичным с одной страницы на другую, может ли кто-нибудь показать мне гениальное понимание, которое может изменить это для меня и помочь мне справиться с чудесный мир IE?

+0

Обе страницы кажутся мне совсем разными. Кроме того, используя Opera (не IE), я не вижу никакого эффекта на странице .com/index. Вы уверены, что это правильная ссылка? – Seb

+0

Извините, они «выглядят» совсем по-другому, это «движение», когда вы наводите на верх верхние изображения, что является сутью «kwick», которая работает в IE, и, надеюсь, Opera. На корневой странице ошибка javascript - это то, о чем я озадачен, также эффект не работает, кроме как в Safari/Firefox – 2009-03-17 13:20:22

+0

Опубликовать эту ошибку и опубликовать неприятный код? –

ответ

4

Это комбинация IE «ошибка» (в которой он притворяется, что элементы с идентификатором являются идентификаторами на глобальном уровне Javascript) и плагин Kwick, который не имеет переменной var.

Kwick использует переменную, внутренне называемую container, но не использует var, поэтому она будет создана по всему миру. Ваша страница содержит div с идентификатором ID container, и, следовательно, IE предполагает, что код Kwick пытается присвоить значение свойству по умолчанию элемента COM, элементы DOM не имеют свойства по умолчанию, поэтому ошибка «не поддерживается».

Измените идентификатор div на что-то еще, и все должно быть хорошо.

+0

Я буду! Таким образом, множественные идентификаторы, похоже, не беспокоят Firefox/Safari, но я вижу, что это не-нет, я очень благодарен! – 2009-03-17 13:30:25

+0

В IE действительно возникает вопрос о том, чтобы идентификаторы элементов отображались как глобальные идентификаторы в Javascript. Другие браузеры не делают этого, поэтому было бы хорошо иметь глобальную переменную javascript, и идентификатор элемента DOM будет использовать одно и то же имя, поскольку это совершенно разные вещи. – AnthonyWJones

+0

Хотелось бы только, чтобы ошибка javascript говорила «пыталась переопределить« контейнер »или что-то полезное! Тем не менее, ваша помощь очень ценится, я провел много часов (в основном, создавая параллели), чтобы попытаться отслеживать это. Ура! – 2009-03-17 13:56:54

Смежные вопросы