2010-06-15 3 views
1

내 데이터 테이블에 마우스 오버 효과를 정의하는 데 문제가 있습니다. 내가 가지고있다richfaces datatable 및 datascroller 콤보에서 jQuery로 인한 마우스 오버

<a4j:form> 
    <rich:dataTable id="dataTable"> ... </rich:dataTable> 
    <rich:datascroller id="dataScroller" for="dataTable" /> 
</a4j:form> 

<rich:jQuery selector="#dataTable tr" query="mouseover(function(){jQuery(this).addClass('active-row')})"/> 
<rich:jQuery selector="#dataTable tr" query="mouseout(function(){jQuery(this).removeClass('active-row')})"/> 

매우 첫 페이지에서 잘 작동합니다. 그러나 다른 페이지로 이동하기 위해 datascroller를 사용하면 마우스 오버 효과가 사라집니다.

테이블이나 jQuery 구성 요소를 다시 렌더링 해 보았는데 문제가 전혀 해결되지 않았습니다.

내가 어떻게 작동하는지 제안 해주세요.

답변

1

이 방법이 효과가 있을지는 모르겠지만 시도해 볼 가치가 있는지는 확실하지 않습니다. richfaces를 사용한 적이 없지만 jQuery 라이브 이벤트는 DOM에 추가 된 미래 요소를 포함하여 모든 요소에 바인딩됩니다.

<rich:jQuery selector="#dataTable tr" query="live('mouseover', function(){jQuery(this).addClass('active-row')})"/> 
<rich:jQuery selector="#dataTable tr" query="live('mouseout', function(){jQuery(this).removeClass('active-row')})"/> 
+0

그것은 작동하지 않았다 :( – John

+0

는 따옴표와 함께 조심 .. 그 .. 그것이 작동하지 않는 원인이 Reigel – Reigel

+0

덕분에 하나가 될 수 있습니다. 나는 내 대답을 수정. –