Какие могут быть последствия, связанные с таргетингом на IE7 и использованием тега, который переводит IE8 в режим IE7 в новом веб-приложении? - PullRequest
3 голосов
/ 13 декабря 2010

Я действительно не хочу этого делать, я хочу настроить таргетинг на последний браузер.Кажется, что это немного задом наперед, чтобы нацелиться на устаревший браузер, а затем заставить IE8 работать в режиме совместимости.Интересно, что произойдет, когда выйдет IE9?

Тем не менее, у JQuery и CSS есть некоторые проблемы, работающие должным образом в IE8, он прекрасно работает в IE7 и Firefox, и я верю даже в Chrome.Я хочу, чтобы эта вещь хорошо работала в IE7, IE8 и FF по крайней мере.Есть ли лучший способ, или я должен просто использовать этот тег для IE8?

<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

Какие могут быть риски для этого? Я просто не чувствую в этом правды, но у меня нет никаких основательных доказательств, подтверждающих мои страхи. У меня такое чувство, что это вызовет проблемы в будущем и создаст потенциал для большой переделки.Мысли?

ОБНОВЛЕНИЕ : Вот сама проблема ...

if (dir == "back" || dir == "jump") {
     $.get(prevNode.attr("href") + "&bID=" + bID + "&ieRefresh=" + Math.random(), "",
          function(data) {
          p.nav.prevHtml = data;
     });
}

Ошибка:

Объект не поддерживает этострока свойства или метода 390, символ 37 (символ, который определяется этими «координатами», является знаком доллара в $ .get ()).

Ответы [ 3 ]

3 голосов
/ 13 декабря 2010
  • Посмотрите на ваш код.
  • Посмотрите, где вы делаете это неправильно.
  • Исправьте ваш код.
  • Посмотрите, как это работает в IE8

В идеале вы хотите, чтобы ваш веб-сайт был совместим с IE8. IE7 сам по себе в значительной степени несовместим со стандартами FF и Chrome и требует много взлома.

Вам будет значительно проще обновить совместимость с IE8 до IE9, потому что IE9 не будет хорошо работать с кодом IE6 / 7.

jQuery будет правильно работать в IE8. Я не могу придумать, что CSS работает в IE7 и FF (говорили FF3.6 правильно, а не FF 1.5?), Но не работает в IE8. Это явный признак того, что ваша установка делает что-то не так.

1 голос
/ 13 декабря 2010

Удивительно, что jQuery не работает должным образом в IE8. Определенно есть различия в CSS между 7 и 8, но что именно вы делаете в jQuery, который не работает в 8?

Кроме того, использование условных операторов IE не вариант? т.е.

<!--[if IE 8]>
Special instructions for IE 8 here
<![endif]-->

UPDATE:

Иногда использование знака $ может вызвать проблемы в зависимости от того, что вы еще делаете. Делает ли что-либо использование «jQuery» вместо «$»? Я опробовал ваш код в IE8 и не получил никаких ошибок ....

0 голосов
/ 13 декабря 2010

IE8 и IE9 оба включают движок рендеринга IE7 (или что-то очень близкое), лучше заставить IE перейти в режим, который, как вы знаете, работает, чем оставить что-либо сломанным.

Сказав это, для лучшей совместимости форвардовВы должны исследовать и исправить свой сайт для правильной работы в IE8 или как минимум IE9.IE8 не идеален, но если вы не обнаруживаете браузер, jQuery и CSS 2.1 должны работать очень хорошо.У команды IE есть хороший пост в блоге об использовании функции обнаружения, а не перехвата браузера (что, вероятно, является проблемой здесь).

...