我有一个php部分,通过wordpress从谷歌的api加载jquery。我不想在IE浏览器上加载jquery。长话短说,不管什么原因,它都不起作用(你可以阅读我发布的其他问题)。
或者,如果这是不可能的,是否有另一种方法可以在IE浏览器中不使用此代码,也许是php解决方案。
<?php
if( !is_admin()){
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js', false, '1.5.2', true);
wp_enqueue_script('jquery');
}
?>
目标一切除了IE(什么我试图使用,但它没有工作):
<!--[if !IE]><!-->
<!--<![endif]-->
Wordpress中有全局的$is_IE
No。作为一种替代解决方案,您可能希望在PHP块中检测浏览器。比如:
$browser = get_browser();
if ($browser->browser == 'MSIE') {
if (!is_admin()) {
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js', false, '1.5.2', true);
wp_enqueue_script('jquery');
}
}
或者像Nikolay Yordanov的回答那样使用$is_IE
全局变量:
if ($is_IE) {
if (!is_admin()) {
wp_deregister_script('jquery');
wp_register_script('jquery', 'http://ajax.googleapis.com/ajax/libs/jquery/1.5.2/jquery.min.js', false, '1.5.2', true);
wp_enqueue_script('jquery');
}
}
简短的回答:no.
长回答:IE条件注释是客户端,而PHP是服务器端,所以它不会工作。
可能的解决方案:http://php.net/manual/en/function.get-browser.php(或者根据已经发布的答案之一,wordpress提供了一个$is_IE全局)