日期:2014-05-16  浏览次数:20463 次

返回的好像不是JQuery对象而无法用show?
在学做菜单效果,暂时没什么思路,试冴摸索锻炼一下,首先个ul就弹不出来<br />
alert了一下,是Object Object,这不是JQuery对象好像.是DOM对象.然后我改成alert($($(this).find('ul')))都还是一样..
求指点我哪里不正确.<br />
==========
<div class="main_menu">
<div class="tm">
<span class="s1">menu1</span>
<ul class="ul1">
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu2</a></li>
<li><a href="#">submenu3</a></li>
<li><a href="#">submenu4</a></li>
<li><a href="#">submenu5</a></li>
</ul>
</div>
<div class="tm">
<span>menu2</span>
<ul class="ul2">
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu2</a></li>
<li><a href="#">submenu3</a></li>
<li><a href="#">submenu4</a></li>
<li><a href="#">submenu5</a></li>
</ul>
</div>
<div class="tm">
<span>menu3</span>
<ul class="ul3">
<li><a href="#">submenu1</a></li>
<li><a href="#">submenu2</a></li>
<li><a href="#">submenu3</a></li>
<li><a href="#">submenu4</a></li>
<li><a href="#">submenu5</a></li>
</ul>
</div>
</div>
<script type="text/javascript">
$('span').mouseover(function(){
$(this).find('ul').show(100);
});
</script>

------解决方案--------------------
$(".main_menu").hover(function(){
$(this).children("ul").show();
},function(){
$(this).children("ul").hide();
})
------解决方案--------------------
find是找子元素
看楼主贴的html结构 应该是 $(this).next()...

内联元素不要包含块级元素
------解决方案--------------------
$(".main_menu 这个改成下面的").hover(function(){
$(this).children("ul").show();
},function(){
$(this).children("ul").hide();
})
================================
$(".tm").hover(function(){
$(this).children("ul").show();
},function(){
$(this).children("ul").hide();
})