行業(yè)動態(tài)
怎么給網(wǎng)頁中的 Flash 上加超鏈接?不改變FLASH加超鏈拉的方法,給FLASH加鏈接
發(fā)布日期:2012-07-08 閱讀次數(shù):5057 字體大?。?a href="javascript:;" onclick="ChangeFontSize('content',16)">大

  Q:怎么給網(wǎng)頁中的 Flash 上加超鏈接?
  A:說到這個問題,可能有人就會說,那還不簡單,直接用 flash 的ActionScript 中的 url 方法不就搞定了。但是,如果我們的UI人員設(shè)計完flash,但flash對應(yīng)的鏈結(jié)還沒有確定或者以后會變更怎么辦?我需要的是能夠在外部修改flash對應(yīng)的鏈結(jié)。

    那直接在flash所在的object元素外部加標簽來控制不就行了,可能有些人會這么想,思路正確,但是行不通。怎么辦?百度一下先,呵呵,真是相當佩服某些人的牛腦,真牛,下面是一種解決的方法:

    首先,我們肯定是要先插入FLASH.因為,Flash默認是最高層.所以,我經(jīng)常會遇見Flash把下拉菜單擋住的情況.

    把Flash文件放到一個層中,設(shè)為最底層,FLASH設(shè)為透明.

XML/HTML代碼
  1. <EMBED pluginspage=http://www.macrom edia.com/go/getflashplayer src=http://www.zxxswx.com/images/flash/yisky2.swf type=application/x-shockwave-flash width="950" height="90" wmode=transparent quality=high></EMBED><br / >  
  2. <a href='http://www.webkaka.com' style='display:block;width:950px;height:90px;position:absolute;margin-top:-90px; z-index:999;background:#000;filter:alpha(opacity=0);-moz-opacity:0;opacity: 0' title=''></a>  

      二、用按鈕控件BUTTON 來實現(xiàn)

      具體步驟

      1.直接在按鈕上加上onClick事件打開指定頁面:

XML/HTML代碼
  1. <button style="width:225;height:76;border:none;background:transparent"    
  2. k="window.open('http://www.flash8.net\',\'_blank\')" hidefocus>    
  3. <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="225" height="76">    
  4. <param name="movie"    
  5. value="http://www.flash8.net/images/head/bbs.swf">    
  6. <param name="wmode" value="Opaque">    
  7. <param name="quality" value="high">    
  8. <embed src="http://www.flash8.net/images/head/bbs.swf"    
  9. quality="high"    
  10. pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="225" height="76"             wmode="Opaque"></embed>    
  11. </object>    
  12. </button>  

      2.方法1中的代碼運行后單擊按鈕時,按鈕中的Flash有個下沉的動作,如果要取消這個動作,可以禁止按鈕的交互性,然后用標準的A標簽做鏈接,代碼如下:

XML/HTML代碼
  1. <a href="http://www.flash8.com" hidefocus><button disabled style="width:225;height:76;border:none">    
  2. <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="225" height="76">    
  3. <param name="movie"    
  4. value="http://www.flash8.net/images/head/bbs.swf">    
  5. <param name="wmode" value="Opaque">    
  6. <param name="quality" value="high">    
  7. <embed src="http://www.flash8.net/images/head/bbs.swf" quality="high"    
  8. spage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="225" height="76"       wmode="Opaque"></embed>    
  9. </object>    
  10. </button>    
  11. </a>  

      注意:必須設(shè)置 Flash 對象的 wmode 屬性值為 Opaque。

      技巧:方法1中代碼第二行的_blank參數(shù)可以去掉或者修改為_self讓鏈接在當前窗口打開。

      特別提示:代碼運行后,在Flash上單擊,將打開代碼中指定的URL。

      特別說明

      本例問題的解決,主要是利用Flash對象的wmode屬性和BUTTON標簽的特性。設(shè)置Flash對象的wmode屬性值為opaque,是為了降低Flash對象的優(yōu)先級,然后利用BUTTON標簽把Flash對象渲染為一個按鈕,這樣就可以通過設(shè)置BUTTON對象的樣式或事件來解決問題。