Javascript 如何直接链接到jQuery accordion选项卡
我有一个wordpress主题,它有一个用于创建选项卡式界面的内置短代码。问题是我无法从外部页面链接到特定选项卡。我看到关于同一个问题有多个问题,但没有一个答案对我有效。我必须提到,我的javascript/jQuery技能几乎为零,所以即使这看起来很简单,我也不知道该怎么做 我在我的主题中的一个文件中找到了负责手风琴选项卡的jQuery代码,如下所示:Javascript 如何直接链接到jQuery accordion选项卡,javascript,jquery,accordion,Javascript,Jquery,Accordion,我有一个wordpress主题,它有一个用于创建选项卡式界面的内置短代码。问题是我无法从外部页面链接到特定选项卡。我看到关于同一个问题有多个问题,但没有一个答案对我有效。我必须提到,我的javascript/jQuery技能几乎为零,所以即使这看起来很简单,我也不知道该怎么做 我在我的主题中的一个文件中找到了负责手风琴选项卡的jQuery代码,如下所示: // --------------------------------------- // TAB // ------------------
// ---------------------------------------
// TAB
// ---------------------------------------
function base_tab() {
$('.tabs-wrap').each(function(){
var tab_group = $('.tabs-wrap');
$('.tabs li', tab_group).click(function(e){
e.preventDefault();
$('.tabs a', tab_group).removeClass('current');
$('a', this).addClass('current');
$('.panes .pane', tab_group).hide();
$('.panes .pane', tab_group).eq($(this).index()).show();
});
// Trigger Initial Tab
var initial_tab = parseInt( $('.tabs', this).attr('initial-tab') );
$('.tabs li', tab_group).eq(initial_tab).trigger('click');
});
}
就我从前面了解到的类似问题而言,我需要添加此代码,但我无法自行确定在何处以及如何使其工作:
$(window.location.hash).click();
当前指向选项卡的所有链接如下所示:
谢谢你的帮助 首先将您的html更改为
<ul class="tabs" initial-tab="0">
<li><a href="#all">All</a></li>
<li><a href="#kids">Kids Place – Kidproof</a></li>
<li><a href="#baby">Baby Rattle Toy</a></li>
<li><a href="#kidsvideo">Kids Place Video Player</a></li>
<li><a href="#letter">Letters With Ally</a></li>
<li><a href="#mommy">Mommy bird and her chick</a></li>
</ul>
我不能让他们工作。这是有问题的网站和页面:Wel,因为您没有使用jquery ui选项卡:(.在这种情况下,您必须执行哈希检查并根据哈希打开正确的选项卡,或者只需使用Let's check再次检查@GeorgeGrigorita这是一个wordpress网站,我有一个生成选项卡的快捷码。要创建新选项卡,我必须编写
[tab title=name]文本[/tab]
我将代码包装在a href
中,现在代码看起来是这样的
。我还将脚本位添加到javascript文件中。不幸的是,它仍然不起作用。这应该在加载所有其他脚本后开始,所以将我的代码放在所有脚本下面。基本上,只要在加载页面时检查哈希,然后单击它(如果p可能。如果你能复制到JSFIDLE,我可以检查是否有问题
$(function(){
var hash = window.location.hash;
var anchor = $('a[href$="'+hash+'"]');
if (anchor.length > 0){
anchor.click();
}
});