2008-11-26 69 views
0

這可能是一個簡單的問題,我有點尷尬地問這個問題,但我一直在處理這段JavaScript廣告代碼一段時間,這讓我感到困擾,它對我來說沒有任何意義,可能現代瀏覽器已經過時了。我的問題是,我們是否還需要檢查瀏覽器類型,腳本的第二部分是幹什麼的?我們是否仍然需要檢查JavaScript中的不同瀏覽器類型?

<script type="text/javascript"> 
    document.write('<scr' + 'ipt src="" type="text/javascript"></scr' + 'ipt>'); 
</script> 
<script type="text/javascript"> 
    if ((!document.images && navigator.userAgent.indexOf('Mozilla/2.') >= 0) || navigator.userAgent.indexOf("WebTV")>= 0) { 
    document.write('<a href="">'); 
    document.write('<img src="" border="0" alt="" /></a>'); 
    } 
</script> 

我想澄清的是,我居然稱某人一些廣告代碼,所以雖然我可以查看瀏覽器的類型,這將真正做到了代碼管理人員的責任。如果我可以將它轉換成jQuery,我會很喜歡它 - 但是我在撥打電話時遇到了問題(請參閱下面的其他文章)。

我想知道的是,我還需要檢查這些瀏覽器類型嗎?

乾杯,
史蒂夫

回答

1

在第二個代碼片段: 它檢查兩件事情:

  • 瀏覽器打開文檔支持DOM的document.images部分,該文件包含的任何圖像,瀏覽器的用戶代理字符串(標識符)含「的Mozilla/2。」
  • 或該用戶代理字符串包含「的WebTV」
在這些情況下

,它輸出一個空鏈路和圖像標籤。

5

主要是我們使用像jQuery JavaScript庫,其處理這種事情對我們來說。

奇怪的是,現在我發現自己經常瀏覽每個瀏覽器的CSS。

+0

我明白,jQuery處理這個,但我實際上是試圖建立一個調用,而不是用jQuery構建的elses腳本。 – 2008-11-26 18:22:58

2

最好檢查瀏覽器DOM是否支持特定的功能,而不是直接處理用戶代理字符串。

0

這就是爲什麼使用API​​(如jQuery)的原因。他們將檢查瀏覽器兼容性(以及未來兼容性)的行爲從開發者身上移開。當新的瀏覽器或新版本的瀏覽器出現時,如果有必要,API將被更新,以便您的代碼繼續工作。

所以看看你是否可以想出一個jQuery的解決方案,你不必擔心這一點。爲了將來的兼容性,你可能需要獲得最新版本的jQuery,但理論是你的代碼不需要更新。

0

很高興聽到有這麼多人支持jQuery,但我添加的代碼是針對外部腳本,我無法控制,而我的問題是,每當我使用jQuery調用此腳本時,廣告將打開建立自己的網頁上:

$(this).append().html('<script src="http://ad.doubleclick.net/adj/' + site + '.iclick.com/adtarget;subss=' + subss + ';subs=' + subs + ';area=' + area + ';site=' + site + ';kw=' + kw + ';sz=' + $adSize + ';pos=' + count + ';tile=' + tilecount + ';ord=' + zzzzadslotzzzz + '"></script>'); 

我喜歡這個東西進入的jQuery(這是我的目標,因爲我想阻止加載廣告,直到文檔的準備)

謝謝,
Steve

相關問題