css — Могу ли я разместить условные выражения IE в функциях. WordPress

Нас учат размещать следующий сценарий в <head> раздел, условный для IE 9.

<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->

Как и в WordPress, я склонен использовать wp_enqueue_script() подключить сценарии к wp_head() (по умолчанию) или wp_footer(), Мой вопрос:

(1) мы можем реализовать что-то вроде следующего в functions.php в теме WordPress?

function project_scripts(){?>
<!--[if lt IE 9]>
<?php
wp_enqueue_script( 'IE-scripts', 'http://html5shiv.googlecode.com/svn/trunk/html5.js' );
?>
<![endif]-->
<?php
}
add_action( 'wp_enqueue_scripts', 'project_scripts' );

(2) Если так, могу ли я сделать это иначе:

function project_scripts(){
echo '<!--[if lt IE 9]>';
wp_enqueue_script( 'IE-scripts', 'http://html5shiv.googlecode.com/svn/trunk/html5.js' );
echo '<![endif]-->';
}
add_action( 'wp_enqueue_scripts', 'project_scripts' );

0

Решение

Нет JavaScript не могу включите IE условные.

Это потому что IE условно Узлы HTML-комментариев и так же, как обычная разметка HTML не имеет смысла в источнике JavaScript, такие комментарии приводят к недействительным JavaScript.

Возможно, стоит взглянуть на такой подход, как Modernizr который использует функцию обнаружения. Альтернативно, условный IE может использоваться для добавления классов к элементу, который может быть обнаружен позже, как показано здесь.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]