0
我的导航是90%的工作,但我有困难让我的孙子(三级导航)显示一旦子(导航)链接已被徘徊。jQuery导航 - 需要显示孙孩子链接上的孩子悬停 - jsfiddle
这里是什么,我至今一的jsfiddle: http://jsfiddle.net/CSwgQ/1/
仅供参考:根据每个孩子的链接“关于”目前有一个孙子链接进行测试。
<script type='text/javascript'>
jQuery(document).ready(function($){
var lastopen = null;
var timeout = null;
jQuery("#access ul li ul").show();
jQuery("#access ul li ul li").hide();
function showmenu(element)
{
element.css("background","url('/var/www/wp-content/themes/GreatWall/images/arrow.png') no-repeat bottom");
// var children = element.find("ul li");
var children = element.children('ul').children('li')
children.show();
}
function hidemenu(element, fade)
{
element.css("background","transparent");
var children = element.find("ul li");
fade = typeof(fade) != 'undefined' ? fade : false;
if(fade)
{
children.fadeOut(300);
}
else
{
children.hide();
}
}
jQuery("#access ul li").each(function(i,v){
jQuery(v).mouseover(function(e){if(timeout != null){clearTimeout(timeout); timeout = null;} if(lastopen != null){hidemenu(lastopen);} lastopen = jQuery(this); showmenu(lastopen);});
jQuery(v).mouseout(function(e){if(timeout != null){clearTimeout(timeout); timeout = null;} timeout=setTimeout(function(){hidemenu(lastopen, true); lastopen = null;},1500);});
});
//jQuery("#access ul li ul").css("display", "block");
//jQuery("#access ul li").each(function(i,v){var width = 0; jQuery(v).find("ul li").each(function(ii,vv){width += jQuery(vv).width();}); var mid = jQuery(v).position().left+jQuery(v).width()/2-width/2; jQuery(v).find("ul li:first").css("margin-left", Math.min(Math.max(0, mid), 940-width));});
//jQuery("#access ul li").each(function(i,v){var width = 0; jQuery(v).find("ul li").each(function(ii,vv){width += jQuery(vv).width();}); var mid = jQuery(v).position().left; jQuery(v).find("ul li:first").css("margin-left", Math.min(Math.max(0, mid), 940-width));});
//jQuery("#access ul li ul").css("display", "none");
});
</script>
任何帮助将不胜感激!在此先感谢
哈,不可思议!我肯定欠你一杯啤酒。你真棒Jai –
谢谢杰夫!你真的是一个很好的人,是在印度等待啤酒。 – Jai
任何想法,为什么这不会显示在IE 8或以下与jquery-1.7.1的孙辈?在所有其他浏览器中都能完美运行 –