2012-03-30 3 views
0

페이지의 절반이 동적 너비이고 다른 하나가 고정되어있는 레이아웃이있는 페이지가 있습니다. 이것은 고정 너비 쪽을 오른쪽으로 유동시킴으로써 이루어집니다. 그것은 모두 잘 표시되지만 고정 폭 마크 업이 동적 폭 마크 업보다 먼저 오기 때문에 탭 정렬이 해제됩니다.부동 입력의 탭 인덱스

는 여기를 참조하십시오 :

는 어떻게 입력에 tabIndex 속성을 퍼팅에 의지하지 않고이 문제를 극복 할 수 http://jsfiddle.net/BaMqG/?

+1

1. 행 또는 "블록"별로 입력을 탐색 하시겠습니까? 2. 고정 된 그룹을 떠날 수 있습니까? 3. tabindex 속성의 문제점은 무엇입니까? – fcalderan

+0

1. 왼쪽에서 오른쪽으로 탐색하고 싶습니다. 2. 고정 그룹은 동적 그룹을 따라야합니다. 3. 양식은 자바 스크립트를 통해 크기가 커지므로 (입력이 많음) 탭 인덱스를 계속 추적하면 악몽이됩니다. – CeejeeB

답변

0

테이블을 사용하여 작업 할 탭 인덱스가없는 동일한 모양을 얻을 수있었습니다.

는 여기를 참조하십시오 : 그것은 다른 방법으로 할 수 있으면 http://jsfiddle.net/ymSGM/

난 여전히 관심이있을 것입니다.

+0

솔직히, 레이아웃에서 고정 비율과 너비 비율을 혼합하는 것은 본질적으로 html/css에서 문제가됩니다. 양식의 동적 특성을 처리하거나 테이블을 사용하여 문제를 피하기 위해 스크립트를 작성해야합니다. 각자 장단점이 있습니다. 시맨틱 마크 업이 과도한 자바 스크립트를 피하는 것보다이 시나리오에서 덜 중요하다면 테이블이 아마도 당신이 가진 최상의 선택 일 것이다. –

0

jQuery를 사용하여 루프 및 카운터 변수로 tabindexes를 동적으로 설정할 수 있습니다. 확인 해봐. http://jsfiddle.net/BaMqG/22/

$(document).ready(function() { 
    var i = 1; 
    $('.wrapper').each(function(){ 
     $(this).children('.dynamic').children('input').each(function(){ 
      $(this).attr("tabindex",i); 
      i++; 
     }); 
     $(this).children('.fixed').children('input').each(function(){ 
      $(this).attr("tabindex",i); 
      i++; 
     }); 
    }); 
});​ 

은 내가 초기 값은 당신을 시작하려는 어떤 tabIndex를 숫자로 설정 될 수있다.

+0

예,이 부분은 양식의 중간 부분에 위치하므로 js를 통해 새 양식 줄을 추가 할 때 탭 색인을 업데이트해야 할뿐만 아니라 모든 양식을 따르게됩니다. 이것이 내가 비 탭 인덱스 솔루션을 원하는 이유입니다. – CeejeeB

+0

실용적인 비 Tabindex 솔루션이 없다고 생각하지만, 원하는 것을 성취하기 위해이 js를 쉽게 수정할 수 있습니다. 정말로, 그것은 무엇이든 상관없이 js를 사용하게 될 것입니다. 그리고 이것은 아마도 코드를 수행하는 코드가 가장 적은 방법 일 것입니다. –

+0

그러나 페이지에 대한 링크를 게시하면 대체 솔루션을 볼 수 있습니다. –

관련 문제