2011-04-12 47 views
3

我有過的wordpress從谷歌的API加載jQuery的一個php段中的方式。我不想在IE瀏覽器上加載jquery。長話短說,它無論如何都不起作用(你可以通讀我的其他問題)。是否有把PHP的IE條件註釋

或者,如果這是不可能有另一種方式,不使用此代碼時,它的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]--> 

回答

3

號你可能想檢測瀏覽器在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'); 
    } 
} 

或者使用$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'); 
    } 
} 
+0

以及具體而言,如果($ is_IE){...東西...}否則{... jQuery的插入東東...}如果此工作,如果(!$ is_IE){... jQuery的插入的東西... ... } – 2011-04-12 19:47:51

+0

以及我有一個誤會,我發現,你必須聲明格蘭變量作爲全球第一:全球$ is_IE;再次感謝 – 2011-04-12 20:35:47

4

你有全球$ is_IE在WordPress的。

+0

的確,以此作爲條件,而不是條件註釋。或者,您可以使用條件註釋,但必須自己寫出腳本標記,而不是使用WordPress wp_register_script調用。 – ajsutton 2011-04-12 19:39:24