Как программисты занимаются ie6 ошибками в эти дни?

Браузер «читает» ваш html сверху вниз, и когда он встречает javascript или css, он останавливает рендеринг, пока не обработает его полностью. Вот почему во многих случаях предлагается размещать скрипты внизу. Обычно сценарий не может выполнять свою «работу» до тех пор, пока вся страница не будет отрисована, так почему же блокировать первоначальный рендеринг?

При этом, это лишь косвенная причина поведения, которое вы видите. Общий ответ на ваш вопрос заключается в том, что javascript также «читается» сверху вниз, поэтому любая переменная, не объявленная до ее использования, не определена (существует концепция под названием «Подъем», которая также влияет на это, но не актуальность на данный момент). В вашем случае, в частности, объект angular еще не объявлен (если бы вы открыли консольные инструменты, вы бы увидели это как ошибку), и поэтому вы не можете вызвать ни один из методов, связанных с этим объектом. angular объявлено в angular.js, который включен после вашего сценария в первом примере и (правильно) до во втором.

Если вы просто переместите свой сценарий внизу включенных сценариев в первом примере, вы увидите, что ваше приложение должно работать как положено

12
задан Kara 14 January 2014 в 07:19
поделиться

16 ответов

Обновление: Я развернул свой ответ здесь с учебным руководством на моем сайте, который, вероятно, будет более полезным, чем мой ответ здесь. Окончательный IE6 Cheatsheet: Как Зафиксировать 25 + Internet Explorer 6 Ошибок

Вот то, как я занимаюсь IE6:

  • Я проверяю и свой XHTML и CSS.
  • Я сохраняю свои проекты простыми, даже сложные.
  • Я не использую взломы, которые делают недействительным мой CSS.
  • Я использую платформу/библиотеку JavaScript (мне нравится MooTools, но Вы получите много голосов за jQuery, Прототип, YUI, Dojo и многих других), который обрабатывает большую часть моего перекрестного браузера проблемы JavaScript.
  • Я прогрессивно улучшаю свои страницы так, чтобы они сначала работали без JavaScript и затем добавили все дополнительные свойства.
  • Для некоторых двойных граничных проблем я использую display:inline;
  • Если я абсолютно имею к, я использую отдельную таблицу стилей, хотя я нахожу, что должен сделать это все меньше и меньше.
  • Я стараюсь избегать прозрачных изображений в своих разметках. Если мне абсолютно нужны они, я использую PNG8 с альфа-прозрачностью, которую на самом деле поддерживает IE6.
  • Для достигания проблемы минимальной высоты я делаю следующее:

Это для IE6, который интерпретирует высоту как минимальную высоту:

.classNameHere {height:300px;}

Это для для всего остального:

div>div .classNameHere {min-height:300px; height:auto;}

Кстати, если необходимо изолировать IE6 с CSS, это - хороший способ сделать это, поскольку он не поддерживает дочерние селекторы.

17
ответ дан 2 December 2019 в 05:28
поделиться

Поощряя пользователей обновить до чего-то — ЧЕГО-ЛИБО — лучше.

0
ответ дан 2 December 2019 в 05:28
поделиться

Я создаю его для Chrome, затем я оптимизирую для Firefox большую часть времени его просто небольшие вещи затем, я вхожу в IE 8, и затем я вхожу в IE 7 начиная с большинства ошибок, которые я устраню к тому времени. После IE 7 я бросаю беглый взгляд на Opera, и закончен в течение дня. Кто больше заботится о IE 6?

Вы жалуетесь производителям Intel, что CPU не вписывается в Вашего коммодора? Существуют технологические продвижения, и я думаю, что IE 6 должен быть уничтожен лучший способ сделать, который должен сказать пользователю, он должен обновить и позволить сайту быть похожим на дерьмо, которое это - единственный способ вынудить их переключить. Некоторые в конечном счете спросят их детей, почему Интернет повреждается, и затем сын приедет, устанавливают все обновления и маму, или папа может быть счастливым снова.

Мой ответ короче говоря: больше optization вообще не то, как я обрабатываю его.

0
ответ дан 2 December 2019 в 05:28
поделиться

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

Благодаря условному выражению IE комментирует, что легко показать сообщение для просто тех пользователей.

0
ответ дан 2 December 2019 в 05:28
поделиться
  1. Уничтожьте ВСЕ значение по умолчанию, разрабатывающее перед запуском.
  2. Бросьте сценарий Dean Edwards в него.
  3. Если проблемы сохраняются, чтобы сказать пользователям обновлять.
  4. Если IE6 жизненно важен, используйте таблицу стилей IE, которая удаляет то, что не работает и заменяет их менее сложными стилями.
  5. jQuery: толпитесь и т.д. к .hover, вход [type=submit] к input.submit и т.д. Помогает с более старыми версиями FF и Opera также иногда.
0
ответ дан 2 December 2019 в 05:28
поделиться
  1. Заставьте его работать в Firefox;
  2. Проверьте, чтобы видеть, смотрит ли это и работает то же в IE7;
  3. Проверьте, чтобы видеть, сортирует ли это работ в IE6 (потому что это достаточно хорошо).
  4. Если Вы не можете сделать расположения с простым CSS (никакое сумасшедшее расположение relative+absolute, или float:after фиксирует), затем просто делают это с таблицами;
  5. Вставьте DOCTYPE для принуждения браузера в соответствие (а не причуды) режим;
  6. Минимизируйте проблемы модели поля путем уменьшения использования содержавших границ (или путем предоставления невидимых границ другим подобным элементам) и вложенным элементам для уменьшения дополнительных/полей/границ комбинаций, которые просто вызовут Вас горе;
  7. Не потрудитесь пытаться заставить меню CSS работать через все браузеры. Это больше не 2003. Просто используйте JavaScript (например, jQuery/суперрыба).
  8. Только использование: парение на ссылках. Если необходимо измените их с дисплеем: блок.
0
ответ дан 2 December 2019 в 05:28
поделиться

Существует действительно просто, каждый "фиксирует" для проблем IE, который должен помочь упростить его самоубийство. Единственным путем я обнаружил, чтобы помочь IE совершить самоубийство, должен обучить моих посетителей. Это может быть сделано путем сниффинга браузера и если IE обнаруживается, Вы отображаетесь, "справка обновляют веб-" баннер.

Отчасти как Gmail делает...

Мы делаем это в Ра-ajax, и сложенный (посетите сайт с любыми версиями IE),

0
ответ дан 2 December 2019 в 05:28
поделиться

Сборка для Firefox сначала, уничтожения или опыта элементов дизайна снижения говорит Вам, что IE6 не может обработать в начале и не провести больше времени, чем клиентские ордеры спецификации

Опыт TBH является № 1 профилактическая мера для проблем IE6

0
ответ дан 2 December 2019 в 05:28
поделиться

Условные комментарии, терпение и иногда ie7-js.

1
ответ дан 2 December 2019 в 05:28
поделиться

Я соглашаюсь с ответами, которые говорят о процессе, включающем чистый код, условные комментарии, оставаясь счастливым ie6, но не прекрасные, и т.д. и т.д. Но это - очень осторожное, постепенно обрабатывайте, который является все еще в основе, довольно трудоемкой, когда действительно это - все для одного браузера. Я отказываюсь отметить любой ответ, как отвечено, потому что все ответы говорят о существующих методах, с которыми я знаком. Может случиться так, что на мой вопрос отвечают "Нет" :) потому что по существу я был после платформы, которая означала, что Вы не должны были даже волноваться о нюансах ie6, просто кодировать современным способом - что-то, что я думал, что js ie7/8 сделает, но даже как раз сегодня я понимаю, что минимальная высота не фиксируется!!. Спасибо так или иначе за ответы - этому помогают, укрепляют тот мой подход, все еще статус-кво, и я использую свое время так эффективно, как я могу.

1
ответ дан 2 December 2019 в 05:28
поделиться

Чтобы быть абсолютно честным, я действительно не обрабатываю IE6-проблемы очень в последнее время. Мой процесс проектирования прост:

  • Поле/дополнение сброса на всем. Я имею в виду все.
  • Протестируйте мой макет страницы каждые несколько минут. Берет одно касание на F5.
  • Если какое-либо изменение повреждает страницу, я останавливаю все и оцениваю изменение.
  • Если требуемый метод не может использоваться, я исследую альтернативные методы, исключая 'взломы'.
  • Я проверяю и разметку и CSS. И всегда используйте Строгий XHTML 1.0.
  • Я удостоверяюсь свои работы сайта сначала без JavaScript и затем более позднего использования jQuery.

Эти основные методы помешали мне иметь для работы вокруг проблем IE6 много за эти годы. Единственной проблемой я все еще заканчиваю нарушение, является поддержка IE6 PNG24 с Прозрачностью, но IEPNGFix заботится о тех - обычно, не повреждая мои разметки также.

Это может быть мнение глупого человека:
Великие разработчики не находят жалобы, они находят решения.

1
ответ дан 2 December 2019 в 05:28
поделиться

Я использую:

  • "Reset.css" для уменьшения различия между значением по умолчанию браузеров CSS вычислил стили (например, YUI reset.css)
  • Условные Комментарии для помещения дополнительного файла CSS в объем ;) (например./ieFix.css)
  • Блок проверки допустимости W3C, чтобы сказать, вызывается ли различие в рендеринге плохим вложением или это - просто IE ;)
  • если это перестало работать, jQuery помогает много ;)
2
ответ дан 2 December 2019 в 05:28
поделиться

Я установил политику недавно относительно IE6, в основном, пока он не повреждает сайт на IE6, не проводите время на нем.

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

Вот быстрый образец данных из нескольких из сайтов, по которым моя компания имеет данные отслеживания. Это - комбинация недавних данных (сегодня) и некоторых данных приблизительно из 1 год назад, таким образом, существует более высокий процент IE6, чем мы на самом деле добираемся теперь, и даже затем все кроме 3% хитов на 1 из этих 8 сайтов, включенных в данные.

сопроводительный текст http://unkwndesign.com/browerUsage.png
** Обратите внимание, что Chrome основан на WebKit, но его числа не включены в WebKit, только чтобы показать, как быстро это выросло. Общий процент составляет 100,5% из-за округления.

1
ответ дан 2 December 2019 в 05:28
поделиться

Сброс YUI и сетки YUI позволили мне сохранять свою исправность когда поддержка IE6.

IE 6 является браузером "A-класса", что означает, что ошибки и ошибки получают приоритет.

2
ответ дан 2 December 2019 в 05:28
поделиться

Я пытаюсь не поддерживать IE6

3
ответ дан 2 December 2019 в 05:28
поделиться

Я не думаю, что существует когда-либо стандарт относительно того, какой браузер Вы можете или не можете проигнорировать. Это зависит от организации - или аудитория в случае Вашего запуска. Любой JS, который Вы пишете, должен "корректно ухудшиться", но удостоверившись, который на самом деле происходит, время от времени требует некоторой ловкости.

0
ответ дан 2 December 2019 в 05:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: