2009-07-26 2 views
0

Ниже приведен код jquery, который я использую для своих вкладок AJAXЕсть ли лучший способ сделать вкладки jquery?

Есть ли лучший способ, который будет быстрее в браузере, меня не волнуют причудливые переходы.

<script type="text/javascript"> 
var pageUrl = new Array();   
pageUrl[1] = "HOMEbulletin.inc.php"; 
pageUrl[2] = "HOMEfriendstatus.inc.php"; 
pageUrl[3] = "HOMEbulletin.inc.php"; 

function loadTab(id){ 
    if (pageUrl[id].length > 0){ 
     $("#loading").show(); 
     $.ajax({url: pageUrl[id], cache: false, success: function(message) {        
      $("#tabcontent").empty().append(message); 
      $("#loading").hide();    
     } 
    });     
} 
} 

$(document).ready(function(){ 
    $("#loading").hide(); 
    $("#tab1").click(function(){ 
     loadTab(1); 
     $('div.tabs2 ul.HOMEtabs a').removeClass('selected'); 
     $(this).addClass('selected'); 
    }); 

    $("#tab2").click(function(){ 
     loadTab(2); 
     $('div.tabs2 ul.HOMEtabs a').removeClass('selected'); 
     $(this).addClass('selected'); 
    }); 

    $("#tab3").click(function(){ 
     loadTab(3); 
     $('div.tabs2 ul.HOMEtabs a').removeClass('selected'); 
     $(this).addClass('selected'); 
    }); 
    }); 
</script> 

ответ

1

Хотя, похоже, вы решили это самостоятельно, я также предложу альтернативу.

Вы могли бы также добавил вызов новой функции мыши на вкладке вы хотели позвонить в конце вашего document.ready():

$("#tab1").click(); 
+0

Благодаря это хорошо знать о функции мыши(), а также Я изменил вопрос, так как я решил его, прежде чем кто-нибудь ответил, чтобы он не пропал впустую на этом сайте. Другой способ, которым я просто пытался это сделать, - это $ ("# tab1"). AddClass ('selected'); лучше ли использовать javascript или просто hardcode class = "selected" при загрузке страницы в html? – JasonDavis

+0

Обновление Я просто попробовал $ ("# tab1"). Click(); но он, кажется, ничего не делает, какие-то идеи почему? – JasonDavis

3

вы проверили JQueryUI's Tabs? Они довольно превосходны. Не нужно изобретать велосипед. Он также добавляет поддержку некоторых опрятных функций, таких как использование файла cookie для сохранения любой вкладки, на которой пользователь был последним.

Если вы беспокоитесь о размер_файла, вы можете получить только компоненты, необходимые, в качестве альтернативы:

You can use Google's hosted copies of both JQuery and JQueryUI, it uses their entire network, and is extremely fast.

3 Reasons to let Google host for you - Encosia.com

+0

спасибо, я проверю это – JasonDavis

+0

См. Мои изменения в использовании размещенной версии Google. – Sneakyness

Смежные вопросы