Chrome 和 Firefox 中没有超链接(在 Firefox 中,如果我单击链接会打开,但指针不显示可单击)。我正在尝试这样做:
<a href="http://www.teamrustic.com/" target="_blank">
<embed class="ads"
style="margin:0px;border:0px;"
src="swf/flash_banner.swf"
width="315" height="100" wmode="opaque">
</embed>
</a>
尝试使用 CSS .ads{cursor : pointer;}
最佳答案
问题是在某些浏览器中 flash 捕获了点击事件而不是通过 DOM 过滤它。对此没有具体的修复。
我知道有两种解决方法:
- 将代码添加到处理点击并打开相应 URL 的 swf 文件
- 在 Flash 顶部放置一个“垫片”隐形链接,它可以适本地捕获点击和链接 - 请注意,您的 Flash 文件中只能有一个这样的链接,所以如果您需要 Flash 文件中的两个链接,它不会不工作。
#2 的示例:
<div id="flashContainer">
<a id="shim" href="mylink.aspx"> </a>
<div id="flash">
<embed class="ads" src="swf/flash_banner.swf" width="315" height="100" wmode="opaque"></embed>
</div>
</div>
#flashContainer {
position: relative;
}
#flash {
z-index: 5;
}
#shim {
display: block;
position: absolute;
top: 0;
left: 0;
width: 315px;
height: 100px;
z-index: 10;
}
已更新
#2 使用 div 的示例,jQuery 连接了点击事件:
<div id="flashContainer">
<div id="shim"></div>
<div id="flash">
<embed class="ads" src="swf/flash_banner.swf" width="315" height="100" wmode="opaque"></embed>
</div>
</div>
#flashContainer {
position: relative;
}
#flash {
z-index: 5;
}
#shim {
position: absolute;
top: 0;
left: 0;
width: 315px;
height: 100px;
cursor: hand; cursor: pointer;
z-index: 10;
}
$("#shim").click(function() {
window.location.assign("mylink.aspx");
});
关于javascript - Flash 横幅周围的超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10107121/