项目中,曾有一个需求,给flash广告添加链接,跳转到另一个网站。于是直接在html的flash object前面加上<a href="url">,发现链接不起作用。

解决方案:

以下各种尝试的解决方案,方式三为最佳实践!

【方式一】在flash外围添加 <a href=...> 标签

【效    果】无效!

<html>
<head>
<title>给flash添加链接</title>
</head>
<body>
<h3>方式一:在flash外围添加 a href=... 标签</h3> <div>
<!--此处添加链接-->
<a href="url" target="_blank" style="text-decoration:none">
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"
width="192" height="136">
<param name="movie" value="fla/xxx.swf"><!--此处添加flash-->
<param name="quality" value="high">
<!--此处添加flash-->
<embed src="fla/xxx.swf" quality="high"
pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" width="192" height="136"></embed>
</object></a>
</div>
</body>
</html>

【方式二】用一个透明的大button包在flash的最外层,或是用一个层盖住flash,然后定义button的onclick事件

【效    果】有效,但用户最关心的SEO作用消失,因为该跳转由JS实现!

<html>
<head>
<title>给flash添加链接</title>
</head>
<body>
<h3>方式二:用一个透明的大button包在flash的最外层,或是用一个层盖住flash,然后定义button的onclick事件</h3>
<div>
<button style="width:192;height:136;background:transparent;border:0; margin:0; padding:0;cursor:hand"
onclick="window.open('url')"><!--此处添加链接-->
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,29,0"
width="192" height="136">
<param name="movie" value="fla/xxx.swf"><!--此处添加flash-->
<param name="quality" value="high">
<param name="wmode" value="transparent">
<!--此处添加flash-->
<embed src="fla/xxx.swf" width="192" height="136" quality="high"
pluginspage="http://www.macromedia.com/go/getflashplayer"
type="application/x-shockwave-flash" wmode="transparent"></embed>
</object>
</button>
</div>
</body>
</html>

【方式三】用一个透明图链接盖住flash,再利用div的zindex属性将flash放在zindex=-1的层,同时设置wmode="transparent"

【效    果】有效!满足各方需求!

<html>
<head>
<title>给flash添加链接</title>
</head>
<body>
<h3>方式三:用一个透明图链接盖住flash,再利用div的zindex属性将flash放在zindex=-1的层,同时设置wmode="transparent"</h3>
<div style="z-index:-1"><!-- 设置z-index属性为-1 -->
<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"
codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0"
width="192" height="136">
<param name="movie" value="fla/xxx.swf" /><!--此处添加flash-->
<param name="quality" value="high" />
<param name="wmode" value="opaque" />
<!--此处添加flash-->
<embed src="fla/xxx.swf" quality="high" wmode="opaque" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" width="192" height="136"></embed>
</object>
</div>
<div id="masker"
style="cursor: hand; margin-top:-136px; width:192px; height:136px; z-index:1; visibility: visible; border:0;">
<!--此处添加链接-->
<a href="url" target="_blank" style="text-decoration:none;">
<!--此处添加遮盖flash的透明图片-->
<img src="data:images/flashMasker.gif" width="192" height="136" border="0" /></a>
</div>
</body>
</html>

给flash添加A链接的更多相关文章

  1. 【博客美化】05.添加GitHub链接

    博客园美化相关文章目录: [博客美化]01.推荐和反对炫酷样式 [博客美化]02.公告栏显示个性化时间 [博客美化]03.分享按钮 [博客美化]04.自定义地址栏logo [博客美化]05.添加Git ...

  2. 在WordPress后台菜单系统中添加Home链接

    在wordpress后台如果想打开前台的话,要想先把鼠标移动到左上角菜单,然后在下拉菜单中点击“查看站点”,很是麻烦,能不能在 WordPress 后台菜单系统中添加 Home 链接呢? 将下面代码复 ...

  3. 用firebug给firefox添加信任链接

    在前文“firefox查看微信公众平台的数据分析时就出现不信任链接怎么办?”我们使用了导入证书的方法添加信任链接,有网友反映说证书导入不成功,这里用另外一种方法来实现:用firebug给firefox ...

  4. JavaScript实现http地址自动检测并添加URL链接

    一.天生我材必有用 给http字符自动添加URL链接是比较常见的一项功能.举两个我最近常用到的自动检测http://地址并添加链接的例子吧,首先是QQ邮箱,在使用QQ邮箱时,如果输入了URL地址(ht ...

  5. 在网页边角添加GitHub链接图标

    在网页边角添加GitHub链接图标 在页面添加HTML一下代码: <a href="https://github.com/you"> <img style=&qu ...

  6. VisualStudio:添加现有项时使用添加为链接

    这个特性很容易忘记使用(很多人可能还不知道),这里解释一下. 添加为链接是指:将指定的文件作为链接添加到项目中,这个文件在作用上和一般的文件没有区别,这样做的好处是可以多个项目共享一个文件,如:连接字 ...

  7. Orchard运用 - 在页面每篇随笔添加编辑链接

    今天继续捣鼓Orchard系统,在此分享一个小技巧,如何在页面每个随笔添加编辑链接,这样方便管理员直接点击进去编辑内容.是的,只对管理员可见. 话说这一个特性一开始是默认启用并集成在核心实现中的,后来 ...

  8. 织梦后台添加友情链接的方法(flink标签)

    标记名称:flink[标签简介][功能说明]:用于获取友情链接,其对应后台文件为"includetaglibflink.lib.php".[适用范围]:全局标记,适用V55,V56 ...

  9. 给PDF批量添加文本链接

    为了进一步补充说明文件中的一些重要内容,PDF文件的创建者会为一些文本创建链接,方便阅读者访问相关的网站,获取更多的信息. 我们可以通过使用pdfFactory文本链接功能来实现以上需求,另外,我们还 ...

随机推荐

  1. SqlServer性能优化分割提升性能分布式视图(七)

    分布式视图: 1.将大表分割到多个服务器上存储 2.物理上与逻辑上都存在多个表 3.通过视图实现对分布到多个服务器表进行访问 4.整合网络负载平衡 链接两台数据库: 建立同样的数据结构: create ...

  2. 如何使用Charles抓包-- 入门篇

    下载地址 注意:首先需要下载java的运行环境支持(一般用burp的人肯定也都有装java环境).装好java环境后,可以直接去百度搜索并下载charles的破解版,下载到破解版之后,里面一般会有注册 ...

  3. PowerDesigner自增列问题

  4. js 判断浏览器的类型

    function getBrowser() {    var Sys = {};    var ua = navigator.userAgent.toLowerCase();    var s;    ...

  5. Android中JNI的使用方法

    可以看到Android上层的Application和ApplicationFramework都是使用Java编写,底层包括系统和使用众多的LIiraries都是C/C++编写的. 所以上层Java要调 ...

  6. [c++] stack的使用

         cout <<        ; i<; i++)          first.push(i);      cout <<                   ...

  7. try,catch,finally与return

    package com.zl.test; // try catch finally 内有returnpublic class Demo { public static void main(String ...

  8. hadoop 集群跑的时候用到hbasejar 文件的引用问题

    1. 创建软连接 ln -s /home/hadoop/bigdater/hbase-0.98.6-cdh5.3.6/conf/hbase-site.xml ./hbase-site.xml(记得这里 ...

  9. python 3 学习笔记(一)

    由于之前学过python2,因此今天就想记录下第一天学习python3过程中的遇到的不同和之前没有太掌握的基础知识. python2和python3的语法区别 print语句 在Python2里,pr ...

  10. Objective-C关键字和概念

    Objective-C关键字和概念 @ 看到这个关键字,我们就应该想到,这是Object-C对C语言的扩展,例如@interface XXX. @interface 声明类 @implementati ...