新浪中用来显示flash的函数


Posted in Javascript onApril 02, 2007

新浪中用来显示flash的函数,格式化后大家可以用啊
sinaflash.js

/** 
  * @author [sina]zhangping1@ 
  * @version v1.1.3 
  * Date:2006-9-8 2006-12-15 
  */ 
if(typeof(sina)!="object"){var sina={}} 
sina.$=function(objId){if(!objId){throw new Error("sina.$(String objId)参数必须")} 
if(document.getElementById){return eval('document.getElementById("'+objId+'")')}else if(document.layers){return eval("document.layers['"+objId+"']")}else{return eval('document.all.'+objId)}} 
sinaFlash=function(C,v,x,V,c,X,i,O,I,l,o){var z=this;if(!document.createElement||!document.getElementById){return} 
z.id=v?v:"";z.classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000";z.codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+(c?c:"7")+",0,0,0";z.width=x;z.height=V;z.movie=C;z.bgcolor=X?X:null;z.quality=O?O:"high";z.src=z.movie;z.pluginspage="http://www.macromedia.com/go/getflashplayer";z.type="application/x-shockwave-flash";z.useExpressInstall=i?i:null;z.xir=(I)?I:window.location;z.redirectUrl=l?l:null;z.detectKey=o?o:null;z.escapeIs=false;z.objAttrs={};z.params={};z.flashVars=[];z.flashVarsStr="";z.embedAttrs={};z.forSetAttribute("id",z.id);z.objAttrs["classid"]=z.classid;z.forSetAttribute("codebase",z.codebase);z.forSetAttribute("width",z.width);z.forSetAttribute("height",z.height);z.forSetAttribute("movie",z.movie);z.forSetAttribute("quality",z.quality);z.forSetAttribute("pluginspage",z.pluginspage);z.forSetAttribute("type",z.type);z.forSetAttribute("bgcolor",z.bgcolor)} 
sinaFlash.prototype={getFlashHtml:function(){var I=this,i='<object ';for(var l in I.objAttrs){i+=l+'="'+I.objAttrs[l]+'" '} 
i+='>';for(var l in I.params){i+='<param name="'+l+'" value="'+I.params[l]+'" /> '} 
if(I.flashVarsStr!=""){i+='<param name="FlashVars" value="'+I.flashVarsStr+'" /> '} 
i+='<embed ';for(var l in I.embedAttrs){i+=l+'="'+I.embedAttrs[l]+'" '} 
i+=' ></embed></object>';return i},forSetAttribute:function(I,i){var l=this;I=I.toLowerCase();switch(I){case "classid":break;case "pluginspage":l.embedAttrs["pluginspage"]=i;break;case "src":l.embedAttrs["src"]=i;l.params["movie"]=i;break;case "movie":l.params["movie"]=i;l.embedAttrs["src"]=i;break;case "onafterupdate":case "onbeforeupdate":case "onblur":case "oncellchange":case "onclick":case "ondblClick":case "ondrag":case "ondragend":case "ondragenter":case "ondragleave":case "ondragover":case "ondrop":case "onfinish":case "onfocus":case "onhelp":case "onmousedown":case "onmouseup":case "onmouseover":case "onmousemove":case "onmouseout":case "onkeypress":case "onkeydown":case "onkeyup":case "onload":case "onlosecapture":case "onpropertychange":case "onreadystatechange":case "onrowsdelete":case "onrowenter":case "onrowexit":case "onrowsinserted":case "onstart":case "onscroll":case "onbeforeeditfocus":case "onactivate":case "onbeforedeactivate":case "ondeactivate":case "type":l.embedAttrs["type"]=i;break;case "codebase":l.objAttrs["codebase"]=i;break;case "width":l.objAttrs["width"]=i;l.embedAttrs["width"]=i;break;case "height":l.objAttrs["height"]=i;l.embedAttrs["height"]=i;break;case "align":l.objAttrs["align"]=i;l.embedAttrs["align"]=i;break;case "vspace":l.objAttrs["vspace"]=i;l.embedAttrs["vspace"]=i;break;case "hspace":l.objAttrs["hspace"]=i;l.embedAttrs["hspace"]=i;break;case "class":l.objAttrs["class"]=i;l.embedAttrs["class"]=i;break;case "title":l.objAttrs["title"]=i;break;case "accesskey":l.objAttrs["accesskey"]=i;break;case "name":l.objAttrs["name"]=i;l.embedAttrs["name"]=i;break;case "id":l.objAttrs["id"]=i;l.embedAttrs["name"]=i;break;case "tabindex":l.objAttrs["tabindex"]=i;break;default:l.params[I]=l.embedAttrs[I]=i}},forGetAttribute:function(i){var I=this;i=i.toLowerCase();if(I.objAttrs[i]!=undefined){return I.objAttrs[i]}else if(I.embedAttrs[i]!=undefined){return I.embedAttrs[i]}else if(I.embedAttrs!=undefined){return I.embedAttrs[i]}else{return null}},setAttribute:function(I,i){this.forSetAttribute(I,i)},getAttribute:function(i){return this.forGetAttribute(i)},addVariable:function(I,i){var l=this;if(l.escapeIs){I=escape(I);i=escape(i)} 
if(l.flashVarsStr==""){l.flashVarsStr=I+"="+i}else{l.flashVarsStr+="&"+I+"="+i} 
l.embedAttrs["FlashVars"]=l.flashVarsStr},getVariable:function(I){var o=this,i=o.flashVarsStr;if(o.escapeIs){I=escape(I)} 
var l=new RegExp(I+"=([^\\&]*)(\\&?)","i").exec(i);if(o.escapeIs){return unescape(RegExp.$1)} 
return RegExp.$1},addParam:function(I,i){this.forSetAttribute(I,i)},getParam:function(){return this.forGetAttribute(name)},write:function(i){var I=this;if(typeof i=="string"){sina.$(i).innerHTML=I.getFlashHtml()}else if(typeof i=="object"){i.innerHTML=I.getFlashHtml()}}}    /** 
* @author [sina]zhangping1@ 
* @version v1.1.3 
* Date:2006-9-8 2006-12-15 
*/  
if(typeof(sina)!="object"){ 
var sina={ 
}  
}  
sina.$=function(objId){ 
if(!objId){ 
throw new Error("sina.$(String objId)参数必须") 
}  
if(document.getElementById){ 
return eval('document.getElementById("'+objId+'")') 
} else if(document.layers){ 
return eval("document.layers['"+objId+"']") 
} else{ 
return eval('document.all.'+objId) 
}  
}  
sinaFlash=function(C,v,x,V,c,X,i,O,I,l,o){ 
var z=this; 
if(!document.createElement||!document.getElementById){ 
return 
}  
z.id=v?v:""; 
z.classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"; 
z.codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version="+(c?c:"7")+",0,0,0"; 
z.width=x; 
z.height=V; 
z.movie=C; 
z.bgcolor=X?X:null; 
z.quality=O?O:"high"; 
z.src=z.movie; 
z.pluginspage="http://www.macromedia.com/go/getflashplayer"; 
z.type="application/x-shockwave-flash"; 
z.useExpressInstall=i?i:null; 
z.xir=(I)?I:window.location; 
z.redirectUrl=l?l:null; 
z.detectKey=o?o:null; 
z.escapeIs=false; 
z.objAttrs={ 
} ; 
z.params={ 
} ; 
z.flashVars=[]; 
z.flashVarsStr=""; 
z.embedAttrs={ 
} ; 
z.forSetAttribute("id",z.id); 
z.objAttrs["classid"]=z.classid; 
z.forSetAttribute("codebase",z.codebase); 
z.forSetAttribute("width",z.width); 
z.forSetAttribute("height",z.height); 
z.forSetAttribute("movie",z.movie); 
z.forSetAttribute("quality",z.quality); 
z.forSetAttribute("pluginspage",z.pluginspage); 
z.forSetAttribute("type",z.type); 
z.forSetAttribute("bgcolor",z.bgcolor) 
}  
sinaFlash.prototype={ 
getFlashHtml:function(){ 
var I=this,i='<object '; 
for(var l in I.objAttrs){ 
i+=l+'="'+I.objAttrs[l]+'" ' 
}  
i+='>'; 
for(var l in I.params){ 
i+='<param name="'+l+'" value="'+I.params[l]+'" /> ' 
}  
if(I.flashVarsStr!=""){ 
i+='<param name="FlashVars" value="'+I.flashVarsStr+'" /> ' 
}  
i+='<embed '; 
for(var l in I.embedAttrs){ 
i+=l+'="'+I.embedAttrs[l]+'" ' 
}  
i+=' ></embed></object>'; 
return i 
} ,forSetAttribute:function(I,i){ 
var l=this; 
I=I.toLowerCase(); 
switch(I){ 
case "classid":break; 
case "pluginspage":l.embedAttrs["pluginspage"]=i; 
break; 
case "src":l.embedAttrs["src"]=i; 
l.params["movie"]=i; 
break; 
case "movie":l.params["movie"]=i; 
l.embedAttrs["src"]=i; 
break; 
case "onafterupdate":case "onbeforeupdate":case "onblur":case "oncellchange":case "onclick":case "ondblClick":case "ondrag":case "ondragend":case "ondragenter":case "ondragleave":case "ondragover":case "ondrop":case "onfinish":case "onfocus":case "onhelp":case "onmousedown":case "onmouseup":case "onmouseover":case "onmousemove":case "onmouseout":case "onkeypress":case "onkeydown":case "onkeyup":case "onload":case "onlosecapture":case "onpropertychange":case "onreadystatechange":case "onrowsdelete":case "onrowenter":case "onrowexit":case "onrowsinserted":case "onstart":case "onscroll":case "onbeforeeditfocus":case "onactivate":case "onbeforedeactivate":case "ondeactivate":case "type":l.embedAttrs["type"]=i; 
break; 
case "codebase":l.objAttrs["codebase"]=i; 
break; 
case "width":l.objAttrs["width"]=i; 
l.embedAttrs["width"]=i; 
break; 
case "height":l.objAttrs["height"]=i; 
l.embedAttrs["height"]=i; 
break; 
case "align":l.objAttrs["align"]=i; 
l.embedAttrs["align"]=i; 
break; 
case "vspace":l.objAttrs["vspace"]=i; 
l.embedAttrs["vspace"]=i; 
break; 
case "hspace":l.objAttrs["hspace"]=i; 
l.embedAttrs["hspace"]=i; 
break; 
case "class":l.objAttrs["class"]=i; 
l.embedAttrs["class"]=i; 
break; 
case "title":l.objAttrs["title"]=i; 
break; 
case "accesskey":l.objAttrs["accesskey"]=i; 
break; 
case "name":l.objAttrs["name"]=i; 
l.embedAttrs["name"]=i; 
break; 
case "id":l.objAttrs["id"]=i; 
l.embedAttrs["name"]=i; 
break; 
case "tabindex":l.objAttrs["tabindex"]=i; 
break; 
default:l.params[I]=l.embedAttrs[I]=i 
}  
} ,forGetAttribute:function(i){ 
var I=this; 
i=i.toLowerCase(); 
if(I.objAttrs[i]!=undefined){ 
return I.objAttrs[i] 
} else if(I.embedAttrs[i]!=undefined){ 
return I.embedAttrs[i] 
} else if(I.embedAttrs!=undefined){ 
return I.embedAttrs[i] 
} else{ 
return null 
}  
} ,setAttribute:function(I,i){ 
this.forSetAttribute(I,i) 
} ,getAttribute:function(i){ 
return this.forGetAttribute(i) 
} ,addVariable:function(I,i){ 
var l=this; 
if(l.escapeIs){ 
I=escape(I); 
i=escape(i) 
}  
if(l.flashVarsStr==""){ 
l.flashVarsStr=I+"="+i 
} else{ 
l.flashVarsStr+="&"+I+"="+i 
}  
l.embedAttrs["FlashVars"]=l.flashVarsStr 
} ,getVariable:function(I){ 
var o=this,i=o.flashVarsStr; 
if(o.escapeIs){ 
I=escape(I) 
}  
var l=new RegExp(I+"=([^\\&]*)(\\&?)","i").exec(i); 
if(o.escapeIs){ 
return unescape(RegExp.$1) 
}  
return RegExp.$1 
} ,addParam:function(I,i){ 
this.forSetAttribute(I,i) 
} ,getParam:function(){ 
return this.forGetAttribute(name) 
} ,write:function(i){ 
var I=this; 
if(typeof i=="string"){ 
sina.$(i).innerHTML=I.getFlashHtml() 
} else if(typeof i=="object"){ 
i.innerHTML=I.getFlashHtml() 
}  
}  
} 

调用方法:
<div> 
<!--ADS:begin=PDPS000000003139:{597CD25D-FAF8-405B-9164-01639EBFB760}--><!--01639EBFB760--><div id="flashcontent_01639EBFB760">不支持Flash</div> 
<script type="text/javascript"> 
var objFlash = new sinaFlash("http://ad4.sina.com.cn/200703/28/86132_58590.swf", "", "585", "90", "7", "", false,"high"); 
objFlash.addParam("wmode", "opaque"); 
objFlash.addVariable("adlink", escape("http://bf.sina.com.cn/newbf/zt/07qycs.html")); 
objFlash.write("flashcontent_01639EBFB760");     
</script><!--$$ ae/2007-4-1 ~ 2007-4-1/A $--><!--ADS:end--> 
</div> 
<!-- 广告 begin --> 
<div> 
<!--新浪首页第三屏小通栏02开始--> 
<!--ADS:begin=PDPS000000000794:{A5AB42A8-EFEB-46AE-A24F-97C36D34A728}--><!--97C36D34A728--><div id="flashcontent_97C36D34A728">不支持Flash</div> 
<script type="text/javascript"> 
var objFlash = new sinaFlash("http://ad4.sina.com.cn/200704/02/86722_sina402news58550.swf", "", "585", "50", "7", "", false,"high"); 
objFlash.addParam("wmode", "opaque"); 
objFlash.write("flashcontent_97C36D34A728");     
</script><!--$$ litong/2007-4-2 ~ 2007-4-6/B $--><!--ADS:end--> 
<!--新浪首页第三屏小通栏02结束--> 
</div> 
<!-- 广告 end -->
Javascript 相关文章推荐
jQuery实现点击文本框弹出热门标签的提示效果
Nov 17 Javascript
深入理解javascript中的立即执行函数(function(){…})()
Jun 12 Javascript
javascript定义变量时带var与不带var的区别分析
Jan 12 Javascript
jQuery实现本地预览上传图片功能
Jan 08 Javascript
JavaScript中用let语句声明作用域的用法讲解
May 20 Javascript
JavaScript中Form表单技术汇总(推荐)
Jun 26 Javascript
利用Angularjs中模块ui-route管理状态的方法
Dec 27 Javascript
Javascript中字符串相关常用的使用方法总结
Mar 13 Javascript
select获取下拉框的值 下拉框默认选中方法
Feb 28 Javascript
node的process以及child_process模块学习笔记
Mar 06 Javascript
JavaScript模拟实现自由落体效果
Aug 28 Javascript
vue组件之间通信方式实例总结【8种方式】
Feb 22 Javascript
我也种棵OO树JXTree[js+css+xml]
Apr 02 #Javascript
javascript中获取选中对象的类型
Apr 02 #Javascript
javascript实现动态增加删除表格行(兼容IE/FF)
Apr 02 #Javascript
在IE中调用javascript打开Excel的代码(downmoon原作)
Apr 02 #Javascript
在你的网页中嵌入外部网页的方法
Apr 02 #Javascript
关于文本限制字数的js代码
Apr 02 #Javascript
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
Apr 01 #Javascript
You might like
php 用checkbox一次性删除多条记录的方法
2010/02/23 PHP
PHP简单实现模拟登陆功能示例
2017/09/15 PHP
JS与框架页的操作代码
2010/01/17 Javascript
JavaScript 学习笔记(十四) 正则表达式
2010/01/22 Javascript
AJAX使用了UpdatePanel后无法使用alert弹出脚本
2010/04/02 Javascript
js获得网页背景色和字体色的方法
2014/03/21 Javascript
javascript如何使用bind指定接收者
2014/05/04 Javascript
node.js中的dns.getServers方法使用说明
2014/12/08 Javascript
js跨域请求数据的3种常用的方法
2015/12/01 Javascript
JQuery给select添加/删除节点的实现代码
2016/04/26 Javascript
JS阻止事件冒泡行为和闭包的方法
2016/06/16 Javascript
bootstrap模态框消失问题的解决方法
2016/12/02 Javascript
js简单实现网页换肤功能
2017/04/07 Javascript
Angular 1.x个人使用的经验小结
2017/07/19 Javascript
layui switch 开关监听 弹出确定状态转换的例子
2019/09/21 Javascript
js中的面向对象之对象常见创建方法详解
2019/12/16 Javascript
vue实现一个获取按键展示快捷键效果的Input组件
2021/01/13 Vue.js
python flask实现分页效果
2017/06/27 Python
Python设计模式之命令模式原理与用法实例分析
2019/01/11 Python
python 扩展print打印文件路径和当前时间信息的实例代码
2019/10/11 Python
python入门之基础语法学习笔记
2020/02/08 Python
在python中logger setlevel没有生效的解决
2020/02/21 Python
Django 设置admin后台表和App(应用)为中文名的操作方法
2020/05/10 Python
浅谈pycharm导入pandas包遇到的问题及解决
2020/06/01 Python
Python: glob匹配文件的操作
2020/12/11 Python
CSS3绘制超炫的上下起伏波动进度加载动画
2016/04/21 HTML / CSS
基于HTML5 Canvas 实现商场监控实例详解
2017/11/20 HTML / CSS
日本食品网上商店:JaponShop.com
2017/11/28 全球购物
Net Remoting把服务器端激活两种模式
2014/01/22 面试题
应聘教师自荐信
2013/10/12 职场文书
生产厂厂长岗位职责
2013/12/25 职场文书
员工拾金不昧表扬稿
2015/05/05 职场文书
公司联欢会主持词
2015/07/04 职场文书
怎样评估创业计划书是否有可行性?
2019/08/07 职场文书
vue完美实现el-table列宽自适应
2021/05/08 Vue.js
Python实现信息管理系统
2022/06/05 Python