簡體   English   中英

單擊導航菜單欄鏈接后,如何使該功能起作用?

[英]How can I get this function to work after a navigation menu bar link has been clicked?

在我的function.js文件中,我有兩個函數:第一個函數使用ajax加載我的頁面。 另一個用於最小化我主頁上的選項卡式內容。 最初,這兩個功能都起作用。 但是,當我單擊任何一個菜單欄鏈接,然后單擊主頁鏈接以返回首頁時,我的選項卡式區域不再起作用。 我有一種感覺,只有在首次加載index.html時,才會調用Organictabs()函數。 如何更改此設置,以便每次加載新頁面時都調用Organictabs()?

// remap jQuery to $
(function($){})(window.jQuery);


/* trigger when page is ready */
$(document).ready(function (){
    initialize();

});

function initialize() {
    //Click on nav to load external content through AJAX
    $('#topnav a, #bottomnav a').not('#bottomnav #fbcallus a').click(function(e){

        e.preventDefault();

        $('#pages').load( e.target.href + ' #loadcontent'); //pages finished loading
    }); //clicked on nav
    //handle AJAX for left nav
$(function() {
        $("#tabedarea").organicTabs();
    });


}



    //Click on nav to load external content through AJAX
    // $('#topnav a').click(function(e){
    //  e.preventDefault();
    //  $('#pages').load( e.target.href + ' #loadcontent'); //pages finished loading
    // }); //clicked on nav



(function($) {

    $.organicTabs = function(el, options) {

        var base = this;
        base.$el = $(el);
        base.$navtabs = base.$el.find(".navtabs");

        base.init = function() {

            base.options = $.extend({},$.organicTabs.defaultOptions, options);

            // Accessible hiding fix
            $(".hidetabs").css({
                "position": "relative",
                "top": 0,
                "left": 0,
                "display": "none"
            }); 

            base.$navtabs.delegate("li > a", "click", function() {

                // Figure out current list via CSS class
                var curList = base.$el.find("a.current").attr("href").substring(1),

                // List moving to
                    $newList = $(this),

                // Figure out ID of new list
                    listID = $newList.attr("href").substring(1),

                // Set outer wrapper height to (static) height of current inner list
                    $allListWrap = base.$el.find(".list-wrap"),
                    curListHeight = $allListWrap.height();
                $allListWrap.height(curListHeight);

                if ((listID != curList) && ( base.$el.find(":animated").length == 0)) {

                    // Fade out current list
                    base.$el.find("#"+curList).fadeOut(base.options.speed, function() {

                        // Fade in new list on callback
                        base.$el.find("#"+listID).fadeIn(base.options.speed);

                        // Adjust outer wrapper to fit new list snuggly
                        //var newHeight = base.$el.find("#"+listID).height();
                        //$allListWrap.animate({
                        //    height: newHeight
                        //});

                        // Remove highlighting - Add to just-clicked tab
                        base.$el.find(".navtabs li a").removeClass("current");
                        $newList.addClass("current");

                    });

                }   

                // Don't behave like a regular link
                // Stop propegation and bubbling
                return false;
            });

        };
        base.init();
    };

    $.organicTabs.defaultOptions = {
        "speed": 300
    };

    $.fn.organicTabs = function(options) {
        return this.each(function() {
            (new $.organicTabs(this, options));
        });
    };

})(jQuery);

我相信在jquery負載上使用complete函數將解決您的問題,我相信:

function initialize() {
//Click on nav to load external content through AJAX
$('#topnav a, #bottomnav a').not('#bottomnav #fbcallus a').click(function(e){

    e.preventDefault();

    $('#pages').load( e.target.href + ' #loadcontent', function() { $("#tabedarea").organicTabs(); }); //pages finished loading
});
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM