Как написать условный комментарий для IE браузеров?

Я не хочу использовать пару плагинов javascript для IE 6/7. Но я хочу использовать их для всех других браузеров.

Как я могу это сделать? Я могу это сделать?

3 ответов


С статья Википедии об условных комментариях (изменено в соответствии с вашими требованиями к версии):

<!--[if gt IE 7]><!-->
<p>This code displays on non-IE browsers and on IE 8 or higher.</p>
<!--<![endif]-->

странная разметка в первой строке служит для соответствия стандартам разметки.


ваш вопрос лучше сформулировать как "использование условных комментариев для исключения содержимого из браузеров IE"; -)

хотя CCs чаще всего используются для предоставления дополнительного контента для IE, существует вариант, который позволяет запретить IE видеть контент. С их обычным высокомерием MS решила назвать это "downlevel-выявленные условные комментарии "(потому что все остальные браузеры хуже, чем IE в их мире).

что-то как

<![if !IE]><p>You are not using Internet Explorer.</p><![endif]>

должно быть все, что вам нужно.

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

Это также означает, что он, вероятно, провалится в XHTML служил с типом контента application/xhtml+xml, но это другая история.


есть довольно хороший ресурс для таких вещей по адресу:http://www.javascriptkit.com/javatutors/conditionalcompile.shtml

Это в сочетании с переменной @_jscript_version должно помочь вам достичь желаемого результата. (Вам придется Google " информация о версии (Windows Scripting-JScript)" для поиска версии JScript - > IE, поскольку мне разрешено вставлять только одну ссылку в качестве нового пользователя.) :-(