2010-11-21 36 views
0

编辑:tl; dr: 在ie7中,css dropmenu元素边框将鼠标焦点放到下拉位下的闪光物体上。帮帮我。IE7下拉菜单通过闪光 - 边界发送鼠标悬停闪光

嗨。 我想创建一个出现在Flash对象上的css下拉菜单。该菜单是使用ul> li>层次结构创建的,“a”标签具有边框。我遇到的问题是,在IE7中,当鼠标经过“a”标签的边界时,鼠标悬停事件将发送到下面的Flash对象,并将鼠标悬停发送到菜单。当鼠标向下移动菜单时,这会导致菜单消失。

我发现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:

Flash影片:

<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 (违规菜单是pag顶部右侧的第二个链接E)。

任何和所有的帮助,非常感谢。

回答

1

你应该添加任何背景颜色到子菜单<ul>。基本上,如果项目没有背景,那么它对于鼠标事件也是“透明的”。

+0

解决了它。谢谢你。 – user514998 2010-11-21 11:31:59

0

你需要做的是让你的闪光灯像this (point 6)一样透明。

+0

已经尝试过。我改变了不透明的原因,因为我在其他地方看到了这个建议,这也是行不通的。 – user514998 2010-11-21 10:52:59