Skip to content

Instantly share code, notes, and snippets.

@wplit
Last active December 14, 2022 09:57
Show Gist options
  • Save wplit/0cc261359e17e7cb9140fb56b2412e47 to your computer and use it in GitHub Desktop.
Save wplit/0cc261359e17e7cb9140fb56b2412e47 to your computer and use it in GitHub Desktop.
Allow hash links to open tabs in Oxygen (read comments for instructions)
var hash = window.location.hash.substr(1);
if (hash == '%%ELEMENT_ID%%') {
setTimeout(function(){
jQuery([document.documentElement, document.body]).animate({
scrollTop: jQuery('#' + '%%ELEMENT_ID%%').offset().top - 100
}, 1000);
jQuery('#' + '%%ELEMENT_ID%%').trigger('click');
},1000);
}
@kotkotan
Copy link

Hi, thx so much for this!

I thought about some little improvment...

Instead of having to use #_tab-XXX-X hash, I wanted to use some custom hash I could easily set for each tab.

So here is my solution:

  • for each tab you want to link, set class "tab-hash-XXXXX" where XXXXX is the custom hash you want to use ;
  • put the following JS code in global tabs div only custom JS only, NOT EACH TAB:
var hash = window.location.hash.substr(1);
if (hash !== '') {
  setTimeout(function(){
  	jQuery('.tab-hash-' + hash).trigger('click');
  },1000);
}

So for example if you set class "tab-hash-mytab" to any tab, loading MY_URL/#mytab will directly open Tabs to right tab ;-)

Many thanks!!! All working except. If I have link trigger on the same page this doesn't work for me. But works perfect if links on the other pages. Any solution to fix that?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment