IE zgłasza błąd JavaScript: wartość właściwości „googleMapsQuery” jest null lub undefined, a nie obiekt Function (działa w innych przeglądarkach)
Mam poważny problem z zasięgiem JavaScript w IE 9.
To jest w treści mojego dokumentu (tak, zdaję sobie sprawę, że skrypt powinien znaleźć się w głowie w celu poprawnego HTML, ale nigdy wcześniej nie złamałem skryptu). Skrypt jest w ciele, ponieważ nie chcę zepsuć udostępnionej strony nagłówka dla skryptu, który dotyczy tylko tej strony:
<code><script type="text/javascript"> function googleMapsQuery(accountNum) { // function code is here (omitted for brevity) } </script> </code>
To jest w środkutd
blok wewnątrz atr
blok wewnątrz atbody
blok wewnątrz atable
blok wewnątrz aform
zablokuj wewnątrzbody
:
<code><button id="google-422111" onclick="googleMapsQuery(422111)" type="button">Google This!</button> </code>
Przeniosłem nawet blok skryptu powyżej formularza na wypadek, gdyby kolejność deklaracji funkcji skryptu była istotna (nie jest).
Skrypt działa bez zarzutu w FireFox i Chrome, ale w IE 9 (z lub bez widoku zgodności) pojawia się ten błąd:
SCRIPT5007: Wartość właściwości „googleMapsQuery” jest pusta lub niezdefiniowana, a nie obiekt funkcji
Studiowałem zakres JavaScript i nie mogę zrozumieć żadnego powodu, dla którego IE uważa, że „googleMapsQuery” jest własnością i dlaczego jest niezdefiniowany. To funkcja, a ja ją zdefiniowałem!