1

我已经尝试了所有我能想到的选项,并试图在其他帖子中找到答案。单击选项卡上方的图像映射时,我试图在页面上打开 jQuery 选项卡。

$(function() {
    $( "#tabs" ).tabs();
});

<div id="tabs">
<map name="Map" id="Map">
<area shape="rect" onclick="$('#tabs-1').click();" coords="11,121,159,222" href="#tabs-1" target="_self" alt="tabs-1" />
<area shape="rect" onclick="$('#tabs-2').click();" coords="164,85,300,153" href="#tabs-2" target="_self" alt="tabs-2" /> </map>

  <ul>
    <li><a href="#tabs-1">Tab1</a></li>
    <li><a href="#tabs-2">Tab2</a></li>
</ul>

<div id="tabs-1">
lorem ipsum
</div>
<div id="tabs-2">
lorem est
</div>
</div>

选项卡显示在 URL 中,但需要重新加载页面才能使选项卡处于活动状态。

4

1 回答 1

1

你的逻辑有点不对劲。您告诉area触发点击带有 id 的元素,tabs-1而不是点击应该激活的标签 LINKtabs-1

你应该改变如下:

  • 为您的标签链接提供一个 ID(最简单的方法,但如果您愿意,也可以使用其他方法)
  • 调用click选项卡链接

所以我的 HTML 看起来像这样:

<div id="tabs">
<map name="Map" id="Map">
<area shape="rect" onclick="$('#tabs-1-link').click();" coords="11,121,159,222" href="#tabs-1" target="_self" alt="tabs-1" />
<area shape="rect" onclick="$('#tabs-2-link').click();" coords="164,85,300,153" href="#tabs-2" target="_self" alt="tabs-2" /> </map>

  <ul>
    <li><a href="#tabs-1" id="tabs-1-link">Tab1</a></li>
    <li><a href="#tabs-2" id="tabs-1-link">Tab2</a></li>
</ul>

<div id="tabs-1">
lorem ipsum
</div>
<div id="tabs-2">
lorem est
</div>
</div>
于 2012-12-10T22:02:56.927 回答