凤凰网广告包装的js
生活随笔
收集整理的這篇文章主要介紹了
凤凰网广告包装的js
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
分析鳳凰網(wǎng)發(fā)現(xiàn),跟廣告相關(guān)的這個(gè)js頻繁出現(xiàn),它是生成圖片和swf廣告代碼片段模板的腳本。
特分析如下:
http://h0.ifengimg.com/ifeng/sources/yingguang-20140307.js
其源碼如下(function() {if (/\.swf$/.test(ad.toLowerCase())) {(function(flash_ad, flash_a, flash_w, flash_h, flash_isActive) {var id = "flash_click_" + Math.ceil(Math.random() * 1000000);var fvars = "";if (flash_isActive) {flash_a = encodeURIComponent(flash_a);fvars = 'clickTag=' + flash_a;}var flash_nad = '<embed width="' + flash_w + 'px" height="' + flash_h + 'px" wmode="opaque" src="' + flash_ad + '" allowScriptAccess="always" flashvars="' + fvars + '" type="application/x-shockwave-flash"></embed>';if (/msie/.test(navigator.userAgent.toLowerCase())) {flash_nad = '<object width="' + flash_w + 'px" height="' + flash_h + 'px" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" ' + 'codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0" id="flash_swf_' + id + '">' + '<param name="wmode" value="opaque"/><param name="allowScriptAccess" value="always"><param name="movie" value="' + flash_ad + '"><param name="flashvars" value="' + fvars + '">' + flash_nad + '</object>';}document.write('<div style="clear: both; margin: 0 auto; width:' + flash_w + 'px;height:' + flash_h + 'px;" id="flash_outer_2_' + id + '">' + '<div style="width:' + flash_w + 'px;height:' + flash_h + 'px;position:relative;" id="flash_outer_1_' + id + '">' + flash_nad);if (!flash_isActive) {document.write('<div style="width:' + flash_w + 'px;position:absolute; top:0px; left:0px;z-index:3;">' + '<a href="' + flash_a + '" target="_blank"><img style="width:' + flash_w + 'px;height:' + flash_h + 'px;border:0px" ' + 'src="http://y0.ifengimg.com/34c4a1d78882290c/2012/0528/1x1.gif"></a></div>');}document.write('</div></div><div class="clear"></div>');})(ad, a, w, h, isActive);} else {(function(img_ad, img_a, img_w, img_h) {document.write('<a target="_blank" href="' + img_a + '"><img src="' + img_ad + '" style="width:' + img_w + 'px;height:' + img_h + 'px;border:none;"/></a>');})(ad, a, w, h);}
})();
在當(dāng)前網(wǎng)頁中生成了一個(gè)swf或是img代碼。對(duì)該js需要輸入的參數(shù)依次是,廣告鏈接,推廣鏈接,width,height,如果是swf,還有一個(gè)isActive參數(shù),表示是否由外部提供推廣鏈接,還是swf自身提供推廣鏈接,為0時(shí)表示是外部提供鏈接。
需要注意的問題是,document.write()在異步加載時(shí)可能會(huì)失敗,所以我們只需要參考它的包裝代碼輸出就可以了。總結(jié)
以上是生活随笔為你收集整理的凤凰网广告包装的js的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 在CentOS 6.3 64bit上安装
- 下一篇: 在Windows 8.1上使用Fiddl