1、先来明白如何在web页面中嵌入flash,一定要明白才行啊。
现阶段用 JS 嵌入 Flash 是最完美的方法,虽然这法子这也是由于浏览器的种种问题而作出的妥协。
但它在保证 Flash 功能的前提下还利用 JS 提供了额外的好处,再者又已经有人写了很完善的嵌入脚本可以方面地下载使用(推荐 SWFObject),我们还有什么理由不用它呢?
SWFObject 那网页是英文的,这里写个简单的用法教程:
下载它的.js文件,在这里: http://blog.deconcept.com/swfobject/swfobject1-4.zip (如果链接失效可能是版本有更新,请用上面给出的地址去主页下载最新版本)
在你的 HTML 页面头部<head>区嵌入这个脚本文件:<script type="text/javascript" src="swfobject.js"></script>
在你的 HTML 中写一个用来放 Flash 的容器,比如<div>,并随便给一个 id 比如 flashcontent。然后在里面放上你的替换内容。
<div id="flashcontent">
这里放替换内容,用来在 Flash 无法显示时显示。
</div>
使用脚本替换这个内容:
<script type="text/javascript">
var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");//其实这个swf可以替换的
//参数意思: 地址,Flash 的 id(不是容器的 id),宽,高,版本需求,背景颜色
//这是最基本的,如果你要高级的设置,就仔细翻翻说明吧。
so.write("flashcontent");
</script>
这脚本可以写在 HTML 中也可以写在外部 .js 文件中。
2、来正题啦:我的web文本编辑器不能正确插入flash,有时候如优酷的视频等。人家优酷给你转贴,嵌入,你还不知道如何转换下,开发出来,这就说不过去了。
a、首先是照上面的操作,做好可以播放本地swf的web测试。
b、然后在html源码中使用javascript
在<div id="flashcontent" style="left: 0px; 64px; position: relative; top: 0px;
height: 7px">
</div>后加入代码如下
<script type="text/javascript">
var get_http_flash_id='<%=get_http_flash_id()%>'; //定义变量,并从C#函数中获得
var get_http_flash='<%=get_http_flash()%>';
var so = new SWFObject(get_http_flash, get_http_flash_id, "480","360" , "7", "#336699");//调用变量
if(get_http_flash!="")
{
so.write("flashcontent");
}
</script>
c、在c#页面内定义好函数以备javascript调用
定义全局变量
public static string flash_http_type;
flash_http_type=db.getdataset(sql).table.rows[0]["flash_http_type"].tostring();//得数据库中的值
protected string get_http_flash()//,返回flash_http_type的值
{
//string str_http_flash = "http://localhost/dotnet/upfordown/num.swf";
//string str_http_flash = "";//测试用的,置为空值
return (flash_http_type);
}
protected string get_http_flash_id()//得到流,输出图片地址
{
string str_http_flash_id = "D27CDB6E-AE6D-11cf-96B8-444553540000";
return (str_http_flash_id );
}
3、最后,当然就是写入数据库了。你把优酷的转帖地址写到数据库中,则,哈哈,web页的出现就有嵌入的优酷视频了。
成功,背后要思考和写下来,好好休息下,再接在励。