2010-11-21 5 views
0

編集:tl; dr: ie7では、css dropmenu要素の境界線がドロップダウンビットの下のフラッシュオブジェクトにマウスフォーカスをもたらします。助けて。フラッシュ上のIE7ドロップダウンメニュー - ボーダーがマウスオーバーをフラッシュに送信

こんにちは。 私はフラッシュオブジェクトの上に表示されるCSSドロップダウンメニューを作成しようとしています。このメニューはul> li>階層を使用して作成され、 "a"タグには境界線があります。私が抱えている問題はIE7で、マウスが "a"タグの境界を通過すると、マウスオーバーイベントが下のフラッシュオブジェクトに送られ、メニューにマウスアウトが送られるということです。メニューをマウスの下に移動するとメニューが消えます。

私はthis threadを見つけましたが、垂直メニューのソリューションの実装方法はわかりません。

関連するコードサンプルは、(Pぐふっ...私はこれの多くは完全に混乱していることを認識し、しかし、私は、デザイナーからこれのほとんどを与えられ、それが少し小さくなるように書き換え時間を過ごすことができません)

CSS:

d.menu-td:hover ul.submenu, td.iehover ul.submenu, ul.submenu li:hover, ul.submenu li a:hover, 
td.hmenu-td:hover ul.submenu, td.iehover ul.submenu li, td.iehover ul.submenu li a{ 
display:block; 
} 
ul.submenu li{ 
border-top: 2px solid #000; 
display: block; 
} 
ul.submenu li a:link, ul.submenu li a:visited{ 
font-size: 12px; 
padding: 2px; 
display: block; 
background-color: #277aab; 
height: 34px; 
color: #93bdd5; 
} 
ul.submenu li a:hover, ul.submenu li a:active{ 
background-color: #319edf; 
color: #1f628d; 
} 

HTML:

フラッシュムービー:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,0,0" width="990" height="280" id="header" align="middle" onmouseover="alert('111');"> 
<param name="allowScriptAccess" value="sameDomain" /> 
<param name="movie" value="./upload/<?=$page_flash?>" /> 
<param name="quality" value="high" /> 
<param name="wmode" value="opaque" /> 
<embed src="./upload/<?=$page_flash?>" quality="high" wmode="transparent" width="990" height="280" name="header" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" /> 
</object> 

ドロップダウンメニュー:

<td align="center" class="menu-td"> 
    <a href="index.php?p=2" class="menu">סניפים</a> 
     <div style="position:relative;left:35px;"> 
     <ul class="submenu"> 
      <li> 
       <a href="index.php?p=9" class="menu">link1</a> 
      </li> 
      <li> 
       <a href="index.php?p=10" class="menu">link2</a> 
      </li> 
      <li> 
       <a href="index.php?p=11" class="menu">link3</a> 
      </li> 
      <li> 
       <a href="index.php?p=12" class="menu">link4</a> 
      </li> 
      <li> 
       <a href="index.php?p=13" class="menu">link5</a> 
      </li> 
      <li> 
       <a href="index.php?p=14" class="menu">link6</a> 
      </li> 
     </ul> 
     </div> 
    </td> 

すなわちホバーイベントを認識させるのに役立つのjavascriptのビット:

<!--[if gte IE 5.5]> 
    <script language="JavaScript" type="text/javascript"> 
    jQuery(document).ready(function(){ 
    jQuery("td.menu-td, td.hmenu-td").hover(
    function() { jQuery(this).addClass("iehover"); }, 
    function() { jQuery(this).removeClass("iehover"); } 
    ); 
    }); 
    </script> 
<![endif]--> 

実際のページへのリンク: link text (問題のメニューは、ページの上部にある右の2番目のリンクですe)。

何かすべてのヘルプは大歓迎です。

答えて

1

サブメニュー<ul>に背景色を追加する必要があります。基本的にitemに背景がない場合は、マウスイベントに対しても「透過」です。

+0

が解決しました。おかげさまでミロン。 – user514998

0

あなたのフラッシュを透明にするには、this (point 6)のようにしてください。

+0

既に試しました。私は不透明な原因に変わったので、私は他のところでその提案を見ましたが、これもうまくいきませんでした。 – user514998

関連する問題