2013-12-16 49 views
1

我想加載一個我知道是用openx創建的橫幅,但橫幅的代碼包含document.write命令,這意味着它在用完iframe(document.write clears page)後清除頁面,以及因爲我的旗幟,是可擴展的,我想將其加載到一個div通過ajax加載openx橫幅

這裏的橫幅廣告的代碼:

<!--/* OpenX Javascript Tag v2.8.8 */-->  
<script type='text/javascript'> 
<!--//<![CDATA[  
var m3_u = (location.protocol=='https:'?'https://www.aw04.net/ads/www/delivery/ajs.php':'http://www.aw04.net/ads/www/delivery/ajs.php');  
var m3_r = Math.floor(Math.random()*99999999999);  if (!document.MAX_used) document.MAX_used = ',';  
document.write ("<scr"+"ipt type='text/javascript' src='"+m3_u);  
document.write ("?zoneid=299");  
document.write ('&amp;cb=' + m3_r);  
if (document.MAX_used != ',') document.write ("&amp;exclude=" + document.MAX_used);  
document.write (document.charset ? '&amp;charset='+document.charset : (document.characterSet ? '&amp;charset='+document.characterSet : ''));  
document.write ("&amp;loc=" + escape(window.location));  
if (document.referrer) document.write ("&amp;referer=" + escape(document.referrer));  
if (document.context) document.write ("&context=" + escape(document.context));  
if (document.mmm_fo) document.write ("&amp;mmm_fo=1");  
document.write ("'><\/scr"+"ipt>"); *///]]>--> 
</script> 
<noscript> 
<a href='http://www.aw04.net/ads/www/delivery/ck.php?n=a47d7715&amp;cb=INSERT_RANDOM_NUMBER_HERE' target='_blank'> 
<img src='http://www.aw04.net/ads/www/delivery/avw.php?zoneid=299&amp;cb=INSERT_RANDOM_NUMBER_HERE&amp;n=a47d7715' border='0' alt='' /> 
</a></noscript> 

是否有裝載這個腳本的方式未修改的東西不是一個iframe?

回答

0

我重寫了用下面的代碼執行document.write:

var elementToWrite = null; 

document.write = function() { 
    if (elementToWrite != null) { 
     elementToWrite.append([].concat.apply([], arguments).join('')); 
    } 
}; 

現在我只需要設置elementToWrite變量與jQuery的一些元素,這實際上打破了幾件事情,但沒有什麼我不能在應用程序代碼修復

0

全部您需要 - 這是兩個鏈接(鏈接到<image src=""屬性和鏈接<a href=""屬性)。

所以,你可以得到它的後端服務器上,並將它作爲JSON,例如