Создание вкладок CSS с помощью jQuery и ajax - PullRequest
0 голосов
/ 15 июля 2011

, как упоминалось выше, я пытался создать вкладки Ajax с предоставленной функцией jQuery .ajax().

Это работает очень хорошо, моя проблема только в том, что значение в атрибуте href от привязкив URL, и я не знаю, как вызвать мою функцию AJAX с #tabname в URL.(Мое намерение состоит в том, что если кто-то сохранит ссылку на сайт, он вернется вправо к этой вкладке, а не к первой вкладке).

И я извиняюсь, нет, я не хочу использовать jQuery-UI потому что, если бы я использовал его, это было бы только для этой одной проблемы, и я думаю, что это не стоит.

Для понимания:

моя вкладка (или якорь) это что-то вроде:<a id="main" href='#main'>Mainpage</a>

мой jquery выглядит следующим образом:

$('#main').click(function(){
            loadtab("main.php");
        });

        function loadTab(pageUrl) 
        {
            //load the content into #tabcontent
            $.ajax( 
            { 
                url: pageUrl, 
                cache: false, 
                success: function(message) 
                {
                    $('#tabcontent').empty().append(message).hide().fadeIn('slow');
                } 
            }); 

РЕДАКТИРОВАТЬ:

если кому-то нравится метод loadTab, вот ссылка, откуда я взял его(не мое) http://jetlogs.org/2008/03/17/jquery-ajax-tabs/

РЕДАКТИРОВАТЬ 2:

хорошо, я решил это так:

    //click the first tab, so that there will be shown anything
    //tabs is an array of my link ids
    $('#'+tabs[0]).click();

    //if there is a given hash, click the matching
    if(window.location.hash+"" != ""){

        var hash = window.location.hash.substr(1)+'';
        if(jQuery.inArray(hash, tabs)){
            $('#'+hash).click();
        }
    }

1 Ответ

1 голос
/ 15 июля 2011

Для направления пользователя на определенную вкладку на основе хэштега, который он использовал во введенном URL-адресе, вы должны использовать клиентское решение для маршрутизации.Вызов $ .ajax с каким-то специальным параметром, как вы, вероятно, догадались, не решает этого требования.Я рекомендую вам взглянуть на https://github.com/mtrpcic/pathjs.Это решение для маршрутизации на основе jquery, которое эффективно отображает конкретные хэштеги в URL для определенных функций.Этот урок: http://stjhimy.com/posts/22-riding-the-hash-bang-with-pathjs-and-ajax-easy-twitter-like-urls может быть полезен для демонстрации использования маршрутизации javascript.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...