网站首页 手机版
 注册 登录
您现在的位置: 畅无忧设计 >> 网站建设 >> HTML教程 >> 正文
最新文章
· 安装与设置FCKEditor
· iframe父窗口和子窗口相互的调用方法
· 解决div总是被select遮挡的问题
· html的框架frame和frameset
· 网页常用的三种注释方法
· iframe背景透明效果的实现
· 使用iframe嵌入的页面单击链接时,让
· 点击#空链接不跳到页面顶端
· 网页表格表框制作技巧
· HTML特殊字符列表
热门文章
 使用iframe嵌入的页面单击链接时,
 iframe背景透明效果的实现
 html的框架frame和frameset
 点击#空链接不跳到页面顶端
 flash自动激活和flash虚线框的解决
 网页中插入背景音乐
 IFRAME属性及详解
 简单实现在网页中控制Flash的播放
 在线视频播放代码大全
 让iframe透明显示
相关文章
没有相关文章
flash自动激活和flash虚线框的解决集合
来源:思缘论坛 更新时间:2009/5/25 10:10:12 阅读次数:
字体:[ ] 我要投稿

自从 MS 为 Flash 控件专利把 IE 修改后,大家鼠标都要多点一次,这也罢了,但鼠标移过去上面多出个虚线框可着实难看。

为此各家都想出解决办法,可以看看 Sina、Sohu、163等

1.ObjectWrap

一般都是使用脚本 .write 出来,用的广的比如 SWFObject 的,前面我说的FLASH图片轮播、切换效果,仿新浪、CCTV中一个就使用的这个,但使用都比较麻烦,现在介绍个新的ObjectWrap
ObjectSwap提供的实现只需要在<head>中引入一个脚本。虽然也是使用脚本,但其逻辑是在页面加载完成后,重写一次<object>标签来实现自动激活。页面中的flash依然是标准的HTML。不需要通过document.write写入。而且对于禁用js的用户Flash依然可以正常显示。这应该算是最unobtrusive的一种实现了。

使用:只要在 head 头中添加下面代码,连接这个 ObjectWrap Js,其他就不用管了,加载网页的时候会自动对页面中的 object 进行重写,激活问题就解决了
<script type="text/javascript" src="objectSwap.js"></script>

附件: objectSwap.zip


2.Dreamweaver公司也推出了解决办法

升级到dreamweaver8.02添加是会加入一个脚本,插入的flash文件就没有虚线框了
在script目录下添加一个脚本             

script/AC_RunActiveContent.js

现在添加flash时这样用

<script src="Scripts/AC_RunActiveContent.js" type="text/javascript"></script>
<script type="text/javascript">
AC_FL_RunContent( 'codebase',http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0','width','450','height','105','src','snow','quality','high','pluginspage',http://www.macromedia.com/go/getflashplayer','wmode','transparent','movie','snow','menu','false' ); //end AC code
</script>
要注意,添加的flash的文件名不能带扩展名要去掉.swf文件名

附完整实例: 完整实例

3.Macromedia 公司的swfobject脚本解决方案

添加一个外接的swfobject.js文件
<head>
<script type="text/javascript" src="swfobject.js"></script>
</head>
<body>
<div id="flashcontent">
  <strong>You need to upgrade your Flash Player</strong>
    Javascript turned off will see this. Content here allows you to leave out <code>noscript</code>
不支持flash时显示的文字
</div>
<script type="text/javascript">
  // <![CDATA[
 
  var so = new SWFObject("so_tester.swf", "sotester", "300", "300", "8", "#FF6600");
  so.addVariable("flashVarText", "this is passed in via FlashVars for example only"); // this line is optional, but this example uses the variable and displays this text inside the flash movie
  so.write("flashcontent");
 
  // ]]>
</script>
</body>

在你的 HTML 页面头部区嵌入这个脚本文件:

<script type="text/javascript" src="swfobject.js"></script>


在你的 HTML 中写一个用来放 Flash 的容器,比如


<div id="flashcontent">
这里放替换内容,用来在 Flash 无法显示时显示。
</div>

使用脚本替换这个内容:

<script type="text/javascript">
var so = new SWFObject("movie.swf", "mymovie", "200", "100", "7", "#336699");
//参数意思: 地址,Flash 的 id(不是容器的 id),宽,高,版本需求,背景颜色
//这是最基本的,如果你要高级的设置,就仔细翻翻说明吧。
so.write("flashcontent");
</script> 

这脚本可以写在 HTML 中也可以写在外部 .js 文件中。

完整的例子和swfobject.js脚本文件: swfobject.zip


4.新浪的解决办法也是插入一个外部链接的js脚本

<script type="text/java" src="http://image2.sina.com.cn/home/sinaflash.js"></script>

通过如下脚本在HTML中写入Flash广告:
<script type="text/javascript">
var objFlash = new sinaFlash("http://ad4.sina.com.cn/200611/17/73696_gundong.swf", "", "279", "56", "7", "", false,"high");
objFlash.addParam("wmode", "opaque");
objFlash.write("flashcontent_02AE4A");       
</script>


:sinaflash.js脚本文件打包:sinaflash.zip

5.一个老外的解决方法

插入ufo.js

附完整例子: ufo3_12.zip


6.另类的解决方式(ie7中无效)

//只要在 </body> 后面加上一行
<script src="javascript:'document.body.innerHTML+=''';"></script>

  • 上一篇文章:
  • 下一篇文章:
  • 关于我们 - 联系我们 - 广告服务 - 在线投稿 - 友情链接 - 网站地图 - 版权声明
    CopyRight 2008-2010, CWYDESIGN.COM - 畅无忧设计, Inc. All Rights Reserved
    滇ICP备09005765号