2011-12-30 3 views
1

호버링 효과로 배경이 #D2DEE8으로 변경됩니다. 나는 단지 :hover:nth-child(odd)을 CSS에 사용하고 싶지만 IE8에서는 작동하지 않는다.은 얼룩말 줄무늬 행 작업을 배경색을 유혹 테이블 행을 얻기 위해 노력하는 내가 + 나는 또한 내 테이블 행의 색상 (<code>#fff</code>, <code>#efefef</code>)를 교류하고자하고있어</p> <p>이 한 IE8을 위해 최선의 방법을 기꺼이

나는 호버링을 위해 jQuery를 사용하고 있었지만, 마우스를 가져 가면 그 행을 떠날 때마다 번갈아 나타나는 색 (현재는 n 번째 자식 (홀수)을 만드는 데 사용함)을 제거합니다.

$(".DefaultTable tr").not(".DefaultTable .nohover").hover(
     function() { 
      var color = $(this).css('background') 
      $(this).css('background', '#D2DEE8'); 
     }, 
     function() { 
      $(this).css('background', color); 
     } 
    ); 

누구도 날이 알아낼 또는 어느 경우의 쉬운/더 나은 방법을 제공 할 수있는 경우, IE8에 대한 유혹 또는 행에 번갈아, 나는 그것을 감사하겠습니다! 감사!

CSS :

.special-color { 
    background: #D2DEE8; 
} 

자바 스크립트 :

var color; //At this point, the `color` variable can be read by both functions 
$(".DefaultTable tr").not(".DefaultTable .nohover").hover(
    function() { 
     color = $(this).css('background') 
     $(this).css('background', '#D2DEE8'); 
    }, 
    function() { 
     $(this).css('background', color); 
    } 
); 

더 나은 방법은 사용하는 것입니다 클래스 이름 :

+0

http://twitter.github.com/bootstrap/#tables – clyfe

답변

3

다른 행 색상에 대해 :odd:even을 사용하십시오. 호버 효과에는 :hover을 사용하십시오. IE8의 Testet.

자바 스크립트 :

$(".DefaultTable tr:odd").css('background-color', '#EFEFEF'); 
$(".DefaultTable tr:even").css('background-color', '#FFFFFF'); 

CSS :

.DefaultTable tr:hover { 
    background-color: #D2DEE8 !important; 
} 

는 또한이 example를 참조하십시오.

+0

.addClass b를 사용하고 싶다. IE8에서는! important가 엘리먼트 스타일을 오버라이드하지 않는다는 것을 알고있다. 업데이트 된 피들 여기에 : http://jsfiddle.net/H8ukq/2/ – henryaaron

+0

나는 IE8과 내 예제를 테스트하고 아무런 문제가 없었다. – scessor

+0

나는 맴돌다에 대해서 이야기하고있다. – henryaaron

1

당신은 일반적인 범위에 color 선언을 이동해야

$(".DefaultTable tr").not(".DefaultTable .nohover").hover(
    function() { 
     $(this).addClass('special-color'); 
    }, 
    function() { 
     $(this).removeClass('special-color'); 
    } 
); 
+0

트위터 부트 스트랩에 코드가 있습니다. IE에서 작동하지 않는 것 같습니다. 크롬에서는 정상적으로 작동하지만 – daveomcd

0

비슷한 일을 시도 할 때 td은 IE에 투명 배경이 없음을 알았습니다.

1

나는 얼룩말 색상에 대한 다음과 같은 코드를 사용하고 또한 아약스 통화에서 작동 선택을하더라도이 코드를 행뿐만 아니라 마우스를 올려 놓고는 ... 그것을

function rowHighlight(){   
    $(function(){ 
    $("#facCodes tr:odd").addClass('oddRow'); 
    $("#facCodes tr:even").addClass('evenEven'); 
    $('#facCodes tr').hover(function() { 
      $(this).addClass('hover'); 
     }, 
     function() { 
      $(this).removeClass('hover'); 
    }); 

}); 
$('#facCodes tr').click(function(event){ 
    $(this).addClass("click").siblings().removeClass("click"); 
}); 

} 
을 시도

.DefaultTable tr td {background-color:transparent}

하고 scessor의 예처럼 않습니다