Браузер «читает» ваш html сверху вниз, и когда он встречает javascript или css, он останавливает рендеринг, пока не обработает его полностью. Вот почему во многих случаях предлагается размещать скрипты внизу. Обычно сценарий не может выполнять свою «работу» до тех пор, пока вся страница не будет отрисована, так почему же блокировать первоначальный рендеринг?
При этом, это лишь косвенная причина поведения, которое вы видите. Общий ответ на ваш вопрос заключается в том, что javascript также «читается» сверху вниз, поэтому любая переменная, не объявленная до ее использования, не определена (существует концепция под названием «Подъем», которая также влияет на это, но не актуальность на данный момент). В вашем случае, в частности, объект angular
еще не объявлен (если бы вы открыли консольные инструменты, вы бы увидели это как ошибку), и поэтому вы не можете вызвать ни один из методов, связанных с этим объектом. angular
объявлено в angular.js, который включен после вашего сценария в первом примере и (правильно) до во втором.
Если вы просто переместите свой сценарий внизу включенных сценариев в первом примере, вы увидите, что ваше приложение должно работать как положено
Обновление: Я развернул свой ответ здесь с учебным руководством на моем сайте, который, вероятно, будет более полезным, чем мой ответ здесь. Окончательный IE6 Cheatsheet: Как Зафиксировать 25 + Internet Explorer 6 Ошибок
Вот то, как я занимаюсь IE6:
Это для IE6, который интерпретирует высоту как минимальную высоту:
.classNameHere {height:300px;}
Это для для всего остального:
div>div .classNameHere {min-height:300px; height:auto;}
Кстати, если необходимо изолировать IE6 с CSS, это - хороший способ сделать это, поскольку он не поддерживает дочерние селекторы.
Поощряя пользователей обновить до чего-то — ЧЕГО-ЛИБО — лучше.
Я создаю его для Chrome, затем я оптимизирую для Firefox большую часть времени его просто небольшие вещи затем, я вхожу в IE 8, и затем я вхожу в IE 7 начиная с большинства ошибок, которые я устраню к тому времени. После IE 7 я бросаю беглый взгляд на Opera, и закончен в течение дня. Кто больше заботится о IE 6?
Вы жалуетесь производителям Intel, что CPU не вписывается в Вашего коммодора? Существуют технологические продвижения, и я думаю, что IE 6 должен быть уничтожен лучший способ сделать, который должен сказать пользователю, он должен обновить и позволить сайту быть похожим на дерьмо, которое это - единственный способ вынудить их переключить. Некоторые в конечном счете спросят их детей, почему Интернет повреждается, и затем сын приедет, устанавливают все обновления и маму, или папа может быть счастливым снова.
Мой ответ короче говоря: больше optization вообще не то, как я обрабатываю его.
Я решил вчера не поддерживать его больше. Существует запуск перемещения, пытающийся уничтожить IE 6.
Благодаря условному выражению IE комментирует, что легко показать сообщение для просто тех пользователей.
Существует действительно просто, каждый "фиксирует" для проблем IE, который должен помочь упростить его самоубийство. Единственным путем я обнаружил, чтобы помочь IE совершить самоубийство, должен обучить моих посетителей. Это может быть сделано путем сниффинга браузера и если IE обнаруживается, Вы отображаетесь, "справка обновляют веб-" баннер.
Отчасти как Gmail делает...
Мы делаем это в Ра-ajax, и сложенный (посетите сайт с любыми версиями IE),
Сборка для Firefox сначала, уничтожения или опыта элементов дизайна снижения говорит Вам, что IE6 не может обработать в начале и не провести больше времени, чем клиентские ордеры спецификации
Опыт TBH является № 1 профилактическая мера для проблем IE6
Я соглашаюсь с ответами, которые говорят о процессе, включающем чистый код, условные комментарии, оставаясь счастливым ie6, но не прекрасные, и т.д. и т.д. Но это - очень осторожное, постепенно обрабатывайте, который является все еще в основе, довольно трудоемкой, когда действительно это - все для одного браузера. Я отказываюсь отметить любой ответ, как отвечено, потому что все ответы говорят о существующих методах, с которыми я знаком. Может случиться так, что на мой вопрос отвечают "Нет" :) потому что по существу я был после платформы, которая означала, что Вы не должны были даже волноваться о нюансах ie6, просто кодировать современным способом - что-то, что я думал, что js ie7/8 сделает, но даже как раз сегодня я понимаю, что минимальная высота не фиксируется!!. Спасибо так или иначе за ответы - этому помогают, укрепляют тот мой подход, все еще статус-кво, и я использую свое время так эффективно, как я могу.
Чтобы быть абсолютно честным, я действительно не обрабатываю IE6-проблемы очень в последнее время. Мой процесс проектирования прост:
Эти основные методы помешали мне иметь для работы вокруг проблем IE6 много за эти годы. Единственной проблемой я все еще заканчиваю нарушение, является поддержка IE6 PNG24 с Прозрачностью, но IEPNGFix заботится о тех - обычно, не повреждая мои разметки также.
Это может быть мнение глупого человека:
Великие разработчики не находят жалобы, они находят решения.
Я использую:
Я установил политику недавно относительно IE6, в основном, пока он не повреждает сайт на IE6, не проводите время на нем.
Я не думаю, по моему скромному мнению, это, IE6 все еще имеет достаточно использования для создания этого стоящим, чтобы моя компания продолжила тратить деньги, устраняющие маленькие проблемы с ним.
Вот быстрый образец данных из нескольких из сайтов, по которым моя компания имеет данные отслеживания. Это - комбинация недавних данных (сегодня) и некоторых данных приблизительно из 1 год назад, таким образом, существует более высокий процент IE6, чем мы на самом деле добираемся теперь, и даже затем все кроме 3% хитов на 1 из этих 8 сайтов, включенных в данные.
сопроводительный текст http://unkwndesign.com/browerUsage.png
** Обратите внимание, что Chrome основан на WebKit, но его числа не включены в WebKit, только чтобы показать, как быстро это выросло. Общий процент составляет 100,5% из-за округления.
Сброс YUI и сетки YUI позволили мне сохранять свою исправность когда поддержка IE6.
IE 6 является браузером "A-класса", что означает, что ошибки и ошибки получают приоритет.
Я не думаю, что существует когда-либо стандарт относительно того, какой браузер Вы можете или не можете проигнорировать. Это зависит от организации - или аудитория в случае Вашего запуска. Любой JS, который Вы пишете, должен "корректно ухудшиться", но удостоверившись, который на самом деле происходит, время от времени требует некоторой ловкости.