2014-10-11 38 views
0

在我的Drupal 7站點中,我有兩個塊顯示的視圖。兩者之間的唯一區別是一個過濾條件-URL Aias-:一個塊顯示其別名爲「/ html5」的內容,另一個顯示「/ flash」url別名內容如果啓用了閃存,則顯示一個Drupal塊或其他代碼

這些塊只能在特定頁面上顯示。該邏輯由Context模塊基於URL控制。這樣,如果URL類似於「perm/type/man/*」,那麼該塊將被顯示。

在這個URL,我需要顯示一個塊或另一個塊,取決於flash內容是否啓用或不在設備級:如果設備支持閃光燈(如PC),則必須顯示閃光燈內容。如果設備不支持Flash(手機),則會顯示html5內容。

我發現,如果閃光燈設備

var hasFlash = false; 
try { 
    var fo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); 
    if (fo) { 
    hasFlash = true; 
    } 
} catch (e) { 
    if (navigator.mimeTypes 
     && navigator.mimeTypes['application/x-shockwave-flash'] != undefined 
     && navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin) { 
    hasFlash = true; 
    } 
} 

上啓用了,但我不知道該怎麼用它做什麼,也沒有在那裏我必須包括代碼這個js代碼來檢測。

你能幫我嗎?

回答

0

你可以試試上面的代碼添加到文件或作爲內嵌腳本drupal_add_js並繼續如下:

  • 加載在同一頁面上兩個塊initialy隱藏和顯示,滿足您的條件之一在js中。
  • 或者使用ajax加載正確的塊內容,並根據您所需的條件將其轉儲到DOM中。
相關問題