大于 IE8 或在 Wordpress 中不是 IE 条件
Greater than IE8 or not IE conditional in Wordpress
通常对于条件脚本加载我会写这样的东西
<!--[if gt IE 8]><!-->
<script src="<?php echo get_stylesheet_directory_uri(); ?>/js/scripts.js"></script>
<!--<![endif]-->
<!--[if lt IE 9]>
<script src="<?php echo get_stylesheet_directory_uri(); ?>/js/scripts-ie8.min.js"></script>
<![endif]-->
不过,我想使用Wordpress的入队功能来利用它的依赖关系。我知道你可以写条件 like this:
wp_enqueue_style( 'so27214782_ie', get_template_directory_uri() . '/ie.css', array(), '27214782', 'all' );
$wp_styles->add_data( 'so27214782_ie', 'conditional', 'IE 6' );
但是,我不确定如何将其应用到我的案例中。您如何在最后一条语句中定位 gt IE8 | !IE
?
你可以把它放在你的函数文件中
wp_enqueue_script( 'scriptsa', get_template_directory_uri() . '/scriptsa.js', array(), '1.0.0', false );
add_filter( 'script_loader_tag', function( $tag, $handle ) {
if ( $handle === 'scriptsa' ) {
$tag = "<!--[if gt IE 8]><!-->$tag<!--<![endif]-->";
}
return $tag;
}, 10, 2 );
wp_enqueue_script( 'scriptsb', get_template_directory_uri() . '/scriptsb.js', array(), '1.0.0', false );
add_filter( 'script_loader_tag', function( $tag, $handle ) {
if ( $handle === 'scriptsb' ) {
$tag = "<!--[if lte IE 8]>$tag<![endif]-->";
}
return $tag;
}, 10, 2 );
通常对于条件脚本加载我会写这样的东西
<!--[if gt IE 8]><!-->
<script src="<?php echo get_stylesheet_directory_uri(); ?>/js/scripts.js"></script>
<!--<![endif]-->
<!--[if lt IE 9]>
<script src="<?php echo get_stylesheet_directory_uri(); ?>/js/scripts-ie8.min.js"></script>
<![endif]-->
不过,我想使用Wordpress的入队功能来利用它的依赖关系。我知道你可以写条件 like this:
wp_enqueue_style( 'so27214782_ie', get_template_directory_uri() . '/ie.css', array(), '27214782', 'all' );
$wp_styles->add_data( 'so27214782_ie', 'conditional', 'IE 6' );
但是,我不确定如何将其应用到我的案例中。您如何在最后一条语句中定位 gt IE8 | !IE
?
你可以把它放在你的函数文件中
wp_enqueue_script( 'scriptsa', get_template_directory_uri() . '/scriptsa.js', array(), '1.0.0', false );
add_filter( 'script_loader_tag', function( $tag, $handle ) {
if ( $handle === 'scriptsa' ) {
$tag = "<!--[if gt IE 8]><!-->$tag<!--<![endif]-->";
}
return $tag;
}, 10, 2 );
wp_enqueue_script( 'scriptsb', get_template_directory_uri() . '/scriptsb.js', array(), '1.0.0', false );
add_filter( 'script_loader_tag', function( $tag, $handle ) {
if ( $handle === 'scriptsb' ) {
$tag = "<!--[if lte IE 8]>$tag<![endif]-->";
}
return $tag;
}, 10, 2 );