2013-02-27 40 views
2

我正在一家餐厅提供网站,并试图找出如何我可以定位在其他选项卡中的选项卡内的定位标签,例如,主标签将是:菜单,信息,评论,但然后在菜单选项卡内,我想要一个列出食物类型的子菜单(开胃菜,主菜等...)理想情况下,我希望它们全都可以立即看到,如果您点击了评论甜品,你会进入菜单标签甜点锚。jQuery目标定位标签内部无效标签

<ul class='tabs'> 
<li><a href='#tab1'>Menu</a></li> 
    <ul class="submenu"> 
     <?php foreach ($contents as $header_id => $item_array): ?> 
     <li> 
      <a href="#<?php echo $item_array[0]["content"] ?>"><?php echo $item_array[0]["content"] ?></a> 
     </li> 
     <?php endforeach; ?> 
    </ul> 
<li><a href='#tab2'>Info</a></li> 
<li><a href='#tab3'>Reviews</a></li> 
</ul> 

回答

0

我怎么能目标是从其他选项卡的标签内锚标签?

尝试使用find()方法,其中“获取每个元素的后代在当前匹配的元素,通过一个选择器,jQuery对象,或元件过滤。

$('ul.tabs li ul.submenu').each(function() { 
    var anchors = $(this).find('a'); //these anchors are per sub menu. 
}); 
+0

所以,我怎么会写“如果被点击子菜单项,打开菜单选项卡,去主播”任何想法? – user1209945 2013-02-27 17:11:01

0

要通过单击链接从一个选项卡切换到另一个选项卡,您可能需要将自定义处理程序附加到这些链接。

例如:

HTML:

<li><a href="#" class="desertLink">Dessert</a></li> 

JS:

$(".desertLink").click(function(){ 
    $(".tabs").tabs("option", "active", 1); 
    $("html, body").animate({scrollTop:$('#dessert_id').position().top}, 'slow'); 
}); 

将从菜单选项卡中的信息选项卡切换的选项卡。

更多选项,看看该选项卡API在http://api.jqueryui.com/tabs/#option-active从这里

+0

我可以在顶级选项卡之间导航,我想要弄清楚的是我如何从“Info”选项卡转到Menu div中的定位标记。例如,从Info选项卡中,单击“Desserts”,这将打开菜单选项卡并转到Dessert定位标记。 – user1209945 2013-02-27 17:12:59

+0

一旦切换标签,您就可以使用'scrollTop' ...我更新了我的答案以显示示例。 – Steve 2013-02-27 17:26:53