的問題是,閃光燈捕捉click事件,而不是通過在一些瀏覽器的DOM對其進行篩選。沒有具體的解決方法。
有兩種解決方法,我知道的:
- 代碼添加到它與點擊交易和打開相應的URL
- 將在閃光燈頂部的「墊片」隱形鏈接您的SWF文件它捕獲點擊和適當的鏈接 - 注意你只能有一個在你的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;
}
更新使用一個div,#2
實施例與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");
});
爲什麼不而不是一個div「適當地捕捉點擊」鏈接 - 否則我與你的解決方案 – mikevoermans 2012-04-11 13:51:52
同意的鏈接將工作一樣也很好,我想,只要它是'顯示:block'和包含'nbsp;' – 2012-04-11 13:52:26
@mikevoermans事實上,我認爲這個鏈接會更加優雅,因爲它消除了對js的需求 - 回答編輯我沒有測試過,但它也可以。謝謝:) – 2012-04-11 13:54:59