这段js代码很给力,能实现对联、底部、飘动、顶部闪动广告,奉献给大家

highpr 2011-07-25 04:43:09
来自:http://www.sohu.com/sohuflash_1.js

if(typeof sas=="undefined")var sas=new Object();
if(typeof sas.ued=="undefined")sas.ued=new Object();
if(typeof sas.ued.util=="undefined")sas.ued.util=new Object();
if(typeof sas.ued.FlashObjectUtil=="undefined")sas.ued.FlashObjectUtil=new Object();
sas.ued.FlashObject=function(swf,id,w,h,ver,c,useExpressInstall,quality,xiRedirectUrl,redirectUrl,detectKey){if(!document.createElement||!document.getElementById)return;
this.DETECT_KEY=detectKey?detectKey:'detectflash';
this.skipDetect=sas.ued.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
this.useExpressInstall=useExpressInstall;
if(swf)this.setAttribute('swf',swf);
if(id)this.setAttribute('id',id);
if(w)this.setAttribute('width',w);
if(h)this.setAttribute('height',h);
if(ver)this.setAttribute('version',new sas.ued.PlayerVersion(ver.toString().split(".")));
this.installedVer=sas.ued.FlashObjectUtil.getPlayerVersion(this.getAttribute('version'),useExpressInstall);
if(c)this.addParam('bgcolor',c);
var q=quality?quality:'high';
this.addParam('quality',q);
var xir=(xiRedirectUrl)?xiRedirectUrl:window.location;
this.setAttribute('xiRedirectUrl',xir);
this.setAttribute('redirectUrl','');
if(redirectUrl)this.setAttribute('redirectUrl',redirectUrl)};
sas.ued.FlashObject.prototype={setAttribute:function(name,value){this.attributes[name]=value},getAttribute:function(name){return this.attributes[name]},addParam:function(name,value){this.params[name]=value},getParams:function(){return this.params},addVariable:function(name,value){this.variables[name]=value},getVariable:function(name){return this.variables[name]},getVariables:function(){return this.variables},createParamTag:function(n,v){var p=document.createElement('param');
p.setAttribute('name',n);
p.setAttribute('value',v);
return p},getVariablePairs:function(){var variablePairs=new Array();
var key;
var variables=this.getVariables();
for(key in variables){variablePairs.push(key+"="+variables[key])}return variablePairs},getFlashHTML:function(){var flashNode="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){if(this.getAttribute("doExpressInstall"))this.addVariable("MMplayerType","PlugIn");
flashNode='flashNode+=' id="'+this.getAttribute('id')+'" name="'+this.getAttribute('id')+'" ';
var params=this.getParams();
for(var key in params){flashNode+=[key]+'="'+params[key]+'" '}var pairs=this.getVariablePairs().join("&");
if(pairs.length>0){flashNode+='flashvars="'+pairs+'"'}flashNode+='/>'}else{if(this.getAttribute("doExpressInstall"))this.addVariable("MMplayerType","ActiveX");
flashNode='"}return flashNode},write:function(elementId){if(this.useExpressInstall){var expressInstallReqVer=new sas.ued.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(expressInstallReqVer)&&!this.installedVer.versionIsValid(this.getAttribute('version'))){this.setAttribute('doExpressInstall',true);
this.addVariable("MMredirectURL",escape(this.getAttribute('xiRedirectUrl')));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title)}}else{this.setAttribute('doExpressInstall',false)}if(this.skipDetect||this.getAttribute('doExpressInstall')||this.installedVer.versionIsValid(this.getAttribute('version'))){var n=(typeof elementId=='string')?document.getElementById(elementId):elementId;
n.innerHTML=this.getFlashHTML()}else{if(this.getAttribute('redirectUrl')!=""){document.location.replace(this.getAttribute('redirectUrl'))}}}};
sas.ued.FlashObjectUtil.getPlayerVersion=function(reqVer,xiInstall){var PlayerVersion=new sas.ued.PlayerVersion(0,0,0);
if(navigator.plugins&&navigator.mimeTypes.length){var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){PlayerVersion=new sas.ued.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."))}}else{try{var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
for(var i=3;
axo!=null;
i++){axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
PlayerVersion=new sas.ued.PlayerVersion([i,0,0])}}catch(e){}if(reqVer&&PlayerVersion.major>reqVer.major)return PlayerVersion;
if(!reqVer||((reqVer.minor!=0||reqVer.rev!=0)&&PlayerVersion.major==reqVer.major)||PlayerVersion.major!=6||xiInstall){try{PlayerVersion=new sas.ued.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","))}catch(e){}}}return PlayerVersion};
sas.ued.PlayerVersion=function(arrVersion){this.major=parseInt(arrVersion[0])||0;
this.minor=parseInt(arrVersion[1])||0;
this.rev=parseInt(arrVersion[2])||0};
sas.ued.PlayerVersion.prototype.versionIsValid=function(fv){if(this.majorif(this.major>fv.major)return true;
if(this.minorif(this.minor>fv.minor)return true;
if(this.revreturn true};
sas.ued.util={getRequestParameter:function(param){var q=document.location.search||document.location.href.hash;
if(q){var startIndex=q.indexOf(param+"=");
var endIndex=(q.indexOf("&",startIndex)>-1)?q.indexOf("&",startIndex):q.length;
if(q.length>1&&startIndex>-1){return q.substring(q.indexOf("=",startIndex)+1,endIndex)}}return""}};
if(Array.prototype.push==null){Array.prototype.push=function(item){this[this.length]=item;
return this.length}}var getQueryParamValue=sas.ued.util.getRequestParameter;
var sohuFlash=sas.ued.FlashObject;
function Cookie(document,name,hours,path,domain,secure){this.$document=document;
this.$name=name;
this.$expiration=hours?new Date((new Date()).getTime()+hours*3600000):null;
this.$path=path?path:null;
this.$domain=domain?domain:null;
this.$secure=secure;
};
Cookie.prototype.store=function (){var cookieval="";
for(var prop in this){if((prop.charAt(0)=='$')||((typeof this[prop])=='function')) continue;
if(cookieval!="") cookieval+='&';
cookieval+=prop+':'+escape(this[prop]);
}var cookie=this.$name+'='+cookieval;
if(this.$expiration)cookie+=';
expires='+this.$expiration.toGMTString();
if(this.$path) cookie+=';
path='+this.$path;
if(this.$domain) cookie+=';
domain='+this.$domain;
if(this.$secure) cookie+=';
secure';
this.$document.cookie=cookie;
};
Cookie.prototype.load=function(){var allcookies=this.$document.cookie;
if(allcookies=="") return false;
var start=allcookies.indexOf(this.$name+'=');
if(start==-1) return false;
start+=this.$name.length+1;
var end=allcookies.indexOf(';
',start);
if(end==-1) end=allcookies.length;
var cookieval=allcookies.substring(start,end);
var a=cookieval.split('&');
for(var i=0;
i i++) a[i]=a[i].split(':');
for(var i=0;
i i++) this[a[i][0]]=unescape(a[i][1]);
return true;
};
Cookie.prototype.remove = function(){var cookie;
cookie = this.$name + '=';
if (this.$path) cookie += ';
path=' + this.$path;
if (this.$domain) cookie += ';
domain=' + this.$domain;
cookie += ';
expires=Fri, 02-Jan-1970 00:00:00 GMT';
this.$document.cookie = cookie;
};
...全文
197 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
highpr 2011-07-26
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 confidenceyu 的回复:]
话说给个demo行不?
[/Quote]
demo就是搜狐首页的链接
weike021996 2011-07-26
  • 打赏
  • 举报
回复
哥表示确实牛人,好晦涩的代码,没格式很头疼,没注释更头疼
angeith 2011-07-26
  • 打赏
  • 举报
回复
到处是错误
24K純帥 2011-07-25
  • 打赏
  • 举报
回复
好长的呀。。
qizhenzhanga 2011-07-25
  • 打赏
  • 举报
回复
顶起来
lsw645645645 2011-07-25
  • 打赏
  • 举报
回复
谢谢楼主分享
EvenShu 2011-07-25
  • 打赏
  • 举报
回复
顶起。。。
confidenceyu 2011-07-25
  • 打赏
  • 举报
回复
话说给个demo行不?
黑蛋大王 2011-07-25
  • 打赏
  • 举报
回复
看的蛋疼
xuexiaodong2009 2011-07-25
  • 打赏
  • 举报
回复
牛人啊
highpr 2011-07-25
  • 打赏
  • 举报
回复
我正在慢慢学习这段代码,也看不懂,希望有人给注释
MuBeiBei 2011-07-25
  • 打赏
  • 举报
回复
JF~············
fuyueyue 2011-07-25
  • 打赏
  • 举报
回复
话说你这段代码的让人看得很窝火
格式还是有用的

87,909

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧