在頁面嵌入 Flash 廣告時,常遇到:
<a> 標籤包裹 <object> 無法點擊跳轉。<button> 觸發跳轉。wmode=transparent)以疊加在頁面內容上。<div>
<a href="目標鏈接" target="_blank">
<button
onclick="window.open('目標鏈接')"
>
<object
classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
codebase="https://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0"
width="Flash寬度" height="Flash高度" id="Untitled-1" align="middle"
>
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="Flash地址" />
<param name="quality" value="high" />
<param name="wmode" value="transparent" />
<param name="bgcolor" value="#ffffff" />
<embed
src="Flash地址"
quality="high" bgcolor="#ffffff"
width="Flash寬度" height="Flash高度"
name="mymovie" align="middle"
allowScriptAccess="sameDomain"
type="application/x-shockwave-flash"
wmode="transparent"
pluginspage="https://www.macromedia.com/go/getflashplayer"
/>
</object>
</button>
</a>
</div>
| 元素 | 作用 | 適用瀏覽器 |
|---|---|---|
<a> 包裹 | 提供語義化鏈接,解決現代瀏覽器點擊跳轉 | Firefox, Chrome, Opera, Safari, Edge |
<button> + onclick | 觸發 window.open,解決 IE 點擊無響應 | IE 6/7/8/9/10/11 |
<object> (classid) | IE ActiveX 加載 Flash | IE |
<embed> | 非 IE 瀏覽器加載 Flash | Firefox, Chrome 等 |
wmode=transparent | Flash 背景透明,允許 CSS 定位疊加 | 所有支援 wmode 的 Player 版本 |
allowScriptAccess=sameDomain | 允許同域 JS 與 Flash 通訊 | 所有 |
上述混合標籤方案在 Flash 時代解決了跨瀏覽器點擊跳轉與透明疊加難題。今日視為歷史技術檔案,理解其兼容性邏輯有助於掌握 Web 嵌入式對象的演進脈絡。