2013-11-03 77 views
0

我想在vBulletin論壇,以顯示谷歌廣告時,該線程不包含任何裂紋或串行所以我寫這篇文章的代碼:的JavaScript:顯示谷歌廣告有條件

<div id ="d_content"> post goes here...</div> 
<div id="adv_content"></div> 
<script> 
function isBlank(str) { 
    return (!str || /^\s*$/.test(str)); 
} 
var str = document.getElementById("d_content").innerHTML; 
var pattern = /crack|nulled|serial|register|key|pach|patch/gi; 
var Len= str.match(pattern); 
if(isBlank(Len)) document.write("adv.."); 
</script> 

,但如何把谷歌的廣告代碼,而不是「副..」 這是我的嘗試:

<div id ="d_content"> post goes here...</div> 
<div id="adv_content"></div> 
<script> 
function isBlank(str) { 
    return (!str || /^\s*$/.test(str)); 
} 
var str = document.getElementById("d_content").innerHTML; 
var pattern = /crack|nulled|serial|register|key|pach|patch/gi; 
var Len= str.match(pattern); 
if(isBlank(Len)) document.write(" 
    <script type="text/javascript"><!-- 
    google_ad_client = "ca-pub-1564912551365218"; 
    /* 728x90, تم إنشاؤها 02/06/11 زهير طه */ 
    google_ad_slot = "7785253845"; 
    google_ad_width = 728; 
    google_ad_height = 90; 
    //--> 
    </script> 
    <script type="text/javascript" 
    src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 
    </script> 
"); 
</script> 

但不工作的..

回答

0

你的代碼是行不通的,因爲瀏覽器就會把第一個</script>作爲腳本的結尾,儘管它在文本字符串中。

一種解決方法是使用轉義/ UNESCAPE序列:

document.write(unescape("%3Cscript type='text/javascript'%3E[your script here]%3C/script%3E")); 

其中<轉義爲%3C>轉義爲%3E

+0

謝謝你多數民衆贊成,但不工作的完整廣告代碼,如何編寫完整的代碼? document.write(unescape(「%3Cscript type ='text/javascript'%3E [ <腳本類型= 「文本/ JavaScript的」 SRC =」 http://playad2.googlesyndication.com/pagead/show_ads.js「> ]%3C/script%3E」)); –

+0

您需要**用%3C代替** <%3C和>,而不是同時保留! – Christophe