简体   繁体   中英

Active tab based on query string

I have created the jquery tabs.

    <div id="tabs_container">
        <ul id="tabs">
            <li class="active"><a href="#tab1">Allgemeines</a></li>
            <li><a href="#tab2">Kontakt</a></li>
            <li><a href="#tab3">Musik</a></li>
            <li><a href="#tab4">Hauptfoto</a></li>
            <li><a href="#tab5">Einstellungen</a></li>
        </ul>
    </div>
    <div id="tabs_content_container">
        <div id="tab1" class="tab_content" style="display: block;">
            <?php include('1.php'); ?>
        </div>
        <div id="tab2" class="tab_content">
            <?php include('2.php'); ?>
        </div>
        <div id="tab3" class="tab_content">
            <?php include('3.php'); ?>
        </div>
        <div id="tab4" class="tab_content">
            <?php include('4.php'); ?>
        </div>
        <div id="tab5" class="tab_content">
            <?php include('5.php'); ?>
        </div>
    </div>
</div>
<script type="text/javascript">
/* <![CDATA[ */
$(document).ready(function(){
    $("#tabs li").click(function() {
        //  First remove class "active" from currently active tab
        $("#tabs li").removeClass('active');

        //  Now add class "active" to the selected/clicked tab
        $(this).addClass("active");

        //  Hide all tab content
        $(".tab_content").hide();

        //  Here we get the href value of the selected tab
        var selected_tab = $(this).find("a").attr("href");

        //  Show the selected tab content
        $(selected_tab).fadeIn();

        //  At the end, we add return false so that the click on the link is not executed
        return false;
    });
});
/* ]]> */
</script>

I need to tab selected from url that means if http://example.com/settings.php#tab2

tab 2 a active tab. #tab3 then tab 3 a active tab. How can I achieve this?

$(document).ready(function(){
  $(".active").removeClass("active");
  $(document.location.hash).addClass("active");
});

window.onhashchange

use the above native code. it will trigger when there is a hash change in the url

window.onhashchange=function(){
if(document.location.hash ==="#tab2"){
//write your code here
}


}

Hope it will help.

http://jsfiddle.net/AavsW/21/

$('#wizard').tabs({ disabled: [1, 2] });

try this i hope it will solve your problem

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM