0

当线程不包含任何破解或序列时,我想在 vbulletin 论坛上显示谷歌广告,所以我编写了以下代码:

<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>

但是如何放置谷歌广告代码而不是“adv ..”这是我的尝试:

    <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>

但没有工作..

4

1 回答 1

0

您的代码将无法工作,因为浏览器会将第一个解释</script>为脚本的结尾,即使它位于文本字符串中。

一种解决方法是使用转义/非转义序列:

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

where<被转义为%3C并且>被转义为%3E

于 2013-11-03T19:48:31.450 回答