Я просмотрел несколько ответов на этом сайте, но по какой-то причине они не смогли решить мою проблему (как выбрать конкретную вкладку с другой страницы, используя тег привязки в JQuery..?). Я тестирую это только на своем локальном компьютере, поэтому не уверен, что это повлияет.
Я хочу ссылаться на каждую вкладку с текущей страницы, а также с других страниц. Прямо сейчас я могу щелкнуть каждую вкладку, и она отлично работает, а URL-адрес сайта меняется (# tab1, # tab2 и т. д.).
Однако, например, если я щелкну ссылку вкладки 1 (не фактическую вкладку, а ссылку на странице, которая предназначена для вкладки 1), когда вкладка 2 видна, ничего не произойдет, но URL-адрес изменится на /site.html#tab1 . Однако, если я щелкну ссылку «Вкладка 1», когда вкладка 1 видна, она успешно приведет меня к вкладке 1. Что-то идет не так, потому что вкладки скрыты — ссылки работают только для той вкладки, которая в данный момент видна. Я полагаю, что если я смогу заставить его работать хотя бы на странице, я смогу заставить его работать и по ссылкам за пределами страницы.
По сути, я хочу иметь возможность отправить кому-нибудь ссылку на /site.html#tab3
и перейти на эту вкладку.
Мой код:
$(document).ready(function() {
//Default Action
$(".tab_content").hide(); //Hide all content
$("ul.tabs li:first").addClass("active").show(); //Activate first tab
$(".tab_content:first").show(); //Show first tab content
//On Click Event
$("ul.tabs li").click(function() {
$("ul.tabs li").removeClass("active"); //Remove any "active" class
$(this).addClass("active"); //Add "active" class to selected tab
$(".tab_content").hide(); //Hide all tab content
var activeTab = $(this).find("a").attr("href"); //Find the rel attribute value to identify the active tab + content
$(activeTab).fadeIn(); //Fade in the active content
return;
});
});
И:
$(document).ready(function () {
var tabId = window.location.hash; // will look something like "#h-02"
$(tabId).click(); // after you've bound your click listener
});
И вкладки:
<ul class="tabs">
<li><a href="#tab1">Ex 1</a></li>
<li><a href="#tab2">Ex 2</a></li>
<li><a href="#tab3">Ex 3</a></li>
<li><a href="#tab4">Ex 4</a></li>
И пример содержимого вкладки и ссылка на странице на вкладку:
//tab content
<div class="tab_container">
<div id="tab1" class="tab_content">
<h2>Ex 1</h2>
//Link to Tab 1 from right menu
<ul><li>
<a href="#tab1">Click here to go to tab 1</a></li></ul>
Спасибо!!