edit: tl; dr: в ie7, границы элемента css dropmenu дают фокус мыши на объекте flash под выпадающим битом.помощь.
привет.я пытаюсь создать выпадающее меню css, которое появляется над флэш-объектом.это меню создается с использованием иерархии ul> li>, а теги "a" имеют границу.проблема, с которой я сталкиваюсь, заключается в том, что в IE7, когда мышь пересекает границу тегов «a», событие наведения мыши отправляется внизу во флэш-объект, а мышка - в меню.это приводит к исчезновению меню при перемещении мыши вниз по меню.
я нашел этот поток , но не уверен, как реализовать решение для вертикального меню.
соответствующие примеры кода (я понимаю, что большая часть этого - полный беспорядок, но я получил большую часть этого от дизайнера и не могу тратить время на переписывание, чтобы быть немного меньше ... тьфу: 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]-->
ссылкана фактическую страницу: текст ссылки (оскорбительное меню является второй ссылкой справа вверху страницы).
любая и вся помощь очень ценится.