Получается очень странная ошибка JavaScript, и эта страница также отказывается работать в Internet Explorer 7 или 8 - PullRequest
1 голос
/ 02 марта 2010

Это страница, над которой я работаю ... http://schnell.dreamhosters.com/folio/earthquake.html Его назначение объясняется с помощью инструкций слева. Я обнаружил, что после стольких поисков и щелчка по такому количеству ссылок в списке справа, что страница зависает, Google Map перестает работать, и Firebug сообщает мне об ошибке в main.js, и она выглядит следующим образом ...

b is undefined  
Line 49 

Я действительно не знаю, почему это произошло внезапно, и ошибка настолько загадочна и запутана в коде Google, что я не думаю, что смогу выяснить это самостоятельно.

Другая проблема, которую я обнаружил, заключается в том, что сама страница просто отказывается работать в IE7 и IE8 (или, возможно, в любой версии IE). Я также в растерянности относительно того, как решить эту проблему, потому что я не могу понять, как использовать какой-либо из отладчиков IE (если они вообще есть), и вижу, как я уже протестировал это и заставил его работать в двух браузерах (технически три, так как Safari запускает WebKit точно так же, как Chrome), у меня просто нет диска или возможности представить, что может пойти не так.

Любая помощь будет принята с благодарностью

Ответы [ 2 ]

1 голос
/ 02 марта 2010

Перенесено из комментария к ответу.

Как упомянул scunliffe, вы пытаетесь сделать кроссбраузер AJAX без использования jsonp. Используйте $.ajax() с типом данных jsonp или добавьте &callback=? в конце URL-адреса в вызове $.getJSON().

0 голосов
/ 02 марта 2010

IE8 довольно хорош, когда дело доходит до помощи разработчику. Из памяти F12 откроет окно разработчика, где вы можете проверить DOM, CSS и скрипт отладки.

Ваша ошибка загадочна, потому что большинство javascript минимизированы, поэтому все переменные преобразуются в отдельные буквы и т. Д. Посмотрите, есть ли у сценария, вызвавшего проблему, версия для разработки (то есть неинициализированная), так как для этого будет гораздо больше смысла проходить через .

Что касается вашей конкретной проблемы, это звучит как проблема времени. Хотя браузеры выполняют достойную работу по последовательному выполнению сценария, если вы следуете стандартам, они различаются по времени, т. Е. Когда все выполняется. Это объясняет, почему в некоторых случаях b не определено, а в других нет.

...