2012-03-16 2 views
1

JQuery UI를 사용하여 탭과 아코디언을 표시하는 사이트에서 작업하고 있지만 요소 초기화에서 변수를 사용할 때로드 블록으로 실행 중입니다. 기본적으로 URL stuff/1/0에서 일부 숫자를 읽고 선택적으로 아코디언 부분을 활성화해야합니다. 이것은 내가 지금까지 가지고있는 것입니다 :요소 초기화의 JQuery UI 변수

$(document).ready(function() { 

//Get URL 
var href = window.location.pathname; 

//Get Segments 
var segs = href.split('/'); 

if(segs.length > 2) 
{ 
    var active_tab = segs[segs.length - 1]; 
    var active_unit = segs[segs.length - 2]; 

    alert(active_tab); 
    alert(active_unit); 

    //Check if its a number 
    if(!isNaN(active_unit)) 
    { 
     //Accordions 
     $(".accordion").accordion 
     ({ 
      active: active_unit, 
      autoHeight: false, 
      collapsible: true 
     }); 
    } 

    //Check if its a number 
    if(!isNaN(active_tab)) 
    { 
     //Tabs 
     $(".tabs").tabs 
     ({ 
      selected: active_tab 
     }); 
    } 
} 

}); 

그러나 이것은 URL 세그먼트를 성공적으로 얻었음에도 불구하고 아코디언에 전혀 영향을 미치지 않는 것으로 보입니다. 분명히 active_tab/active_unit 변수가 아코디언/탭 설정으로 파싱되지 않기 때문입니다. 이것을 이루기위한 다른 방법이 있습니까? 미리 감사드립니다!

답변

2

url에서 구문 분석 한 값은 문자열입니다. 숫자로 파싱해야합니다 :

var active_tab = parseInt(segs[segs.length - 1], 10); 
var active_unit = parseInt(segs[segs.length - 2], 10); 

accordian 플러그인이 숫자를 예상했기 때문에 작동하지 않는 것 같습니다.

+0

완벽 해, 고마워! – SuperTron