2009-03-17 6 views
2

jQuery를 사용하는 페이지와 'kwick'이라는 효과가 있습니다. 내 샘플 페이지에서 http://www.batsumaru.com/main.html에 호스팅되었으므로 모든 브라우저에서 문제없이 작동합니다. 그러나 실제 코드가 http://www.batsumaru.com에서 생성 된 경우 Internet Explorer에 스크립트 오류가 표시됩니다 (개체가 지원하지 않음).Maddening IE 자바 스크립트 문제?

디버깅에 최선을 다했지만 무슨 일이 일어나고 있는지 파악할 수 없었습니다. 코드가 한 페이지에서 다른 페이지로 동일하게 보입니다. 누군가가 저에게 이것을 돌아볼 수있는 천재 통찰력을 보여줄 수 있습니까? IE의 멋진 세계?

+0

두 페이지 모두 내게 다른 것처럼 보입니다. 그 외에 IE가 아닌 Opera를 사용하여 .com/index 페이지에서 어떤 영향도 볼 수 없습니다. 그것이 올바른 링크라고 확신합니까? – Seb

+0

죄송합니다. IE와 'Opera'에서 작동하는 'kwick'의 본질 인 화면 상단에 마우스를 올리면 '움직임'이 매우 달라집니다. 루트 페이지에서 자바 스크립트 오류는 내가 당황한 것입니다. 또한 Safari/Firefox를 제외하고 효과가 작동하지 않습니다. –

+0

오류 게시 및 문제가있는 코드 게시? –

답변

4

이것은 ID가있는 요소가 자바 스크립트 전역 수준의 식별자 인 것처럼 보이는 IE "버그"와 변수가 var 인 Kwick 플러그 인의 조합입니다.

Kwick은 내부적으로 container이라는 변수를 사용하지만 var을 사용하지 않으므로 전역 적으로 생성됩니다. 페이지에 ID가 container 인 div가 포함되어 있으므로 IE에서 Kwick 코드가 COM 기반 요소의 기본 속성에 값을 할당하려고한다고 가정합니다. 따라서 DOM 요소에는 기본 속성이 없으므로 "지원하지 않습니다"오류가 발생합니다.

div ID를 다른 것으로 변경하면 모두 잘되어야합니다.

+0

나는 할 것이다! 따라서 여러 ID가 Firefox/Safari를 괴롭히지 않는 것처럼 보일 수 있지만, 노 - 아닐 수도 있다는 것을 알 수 있습니다. 매우 감사드립니다! –

+0

IE에서 요소의 ID를 자바 스크립트에서 식별자로 사용하는 것은 정말 놀랍습니다. 다른 브라우저는 그렇게하지 않으므로 글로벌 자바 스크립트 변수를 갖는 것이 좋을 것이며 DOM 요소 ID는 완전히 다른 것들이므로 동일한 이름을 사용합니다. – AnthonyWJones

+0

하나만 자바 스크립트 오류 '컨테이너'또는 뭔가 도움이 뭔가를 재정의했다! 아직도, 당신의 도움은 극명하게 평가됩니다, 나는 이것을 시도하고 추적하기 위해 많은 시간을 보냈습니다 (주로 평행을 세우는 것). 건배! –