위 코드를 IE에서 테스트했는데 첫 번째 텍스트 상자에 1을 입력하고 두 번째 텍스트 상자에 2를 입력한 다음 아래 버튼 두 개를 클릭합니다. 결과는 무엇입니까? 원래 의도는 버튼 1이 첫 번째 텍스트 상자의 값을 반환하고 버튼 2가 첫 번째 텍스트 상자의 값을 반환하도록 하는 것입니다. 결과적으로 두 버튼 모두 첫 번째 텍스트 상자의 값을 반환합니다. 즉, document.getElementById(elementName)를 실행하면 이름이나 ID가 elementName과 동일한 첫 번째 객체를 반환하고 ID를 기준으로 검색되지 않는다고 설명합니다. fireFox에는 그런 문제가 없습니다. fireFox는 document.getElementById(elementName)를 실행할 때 elementName과 동일한 ID를 가진 객체만 찾습니다. 아마 IE가 호환성 문제 때문에 이렇게 한 것 같습니다.
At 이번에는 두 가지입니다. text에 입력한 값은 eee, www입니다. IE에서 테스트한 결과는 eee, eee입니다. eee, www도 입력합니다 IE의 테스트 결과는 다음과 같습니다. ,eee 위의 두 테스트 결과를 주의 깊게 분석합니다. 결론은: getElementById가 실행될 때마다 웹 페이지의 모든 양식이 순서대로 순회되며 id와 name의 두 값이 동시에 검색되며, 찾고 있는 ID가 존재하는 경우에는 검색이 진행되지 않습니다. 그러면 검색이 계속되지 않습니다. 즉, 즉, document.getElementById(elementName)를 실행하면 이름이나 ID가 elementName과 동일한 첫 번째 개체가 반환되며 ID로만 검색되지 않습니다. firefox에서 동일한 두 테스트의 첫 번째 결과는 eee, www이고, 두 번째 결과는 id="ccc"를 찾을 수 없기 때문에 null을 반환합니다. 이 결과에 대해서는 도 참조하세요. http://www.jb51.net/article/16852.htm 그는 또한 getElementById 및 getElementByName을 분석했는데, 이는 살펴볼 가치가 있습니다.
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.