2014-04-24 5 views
1

컨테이너가있어서 이벤트 트리거시 맨 아래로 스크롤하고 싶습니다. 나는 구글에 모든 노력을했지만 아무것도 작동하는 것 같다 없습니다 .. 다음은 지금까지 당신이 어떤 시간을 낭비하지 말아 있도록 노력 한 것들입니다 :컨테이너 맨 아래로 스크롤하는 방법

1.

Ext.get('detailsViewId').scrollTo("top", -Ext.get('detailsViewId').getHeight()); 

2.

var mainContainer=this.getDetailContainer(); 
//I get the container here, so no error in the above line 
mainContainer.scrollTo.................. 
mainContainer.element.scrollTo.................. 

등 Chrome의 '개발자 도구'에서 더 많은 것들이 있습니다.

그래서 아무것도 작동하지 않았으므로 Stackoverflow 사용자로부터 뭔가를 얻을 수 있기를 바랍니다.

미리 감사드립니다.

답변

0

Sencha Touches는 기본이 아닌 ScrollableView를 사용하여 컨테이너를 스크롤 가능하게 만듭니다. 화면 이동 가능한 컨테이너에서 getScrollable() 메서드를 호출하여 ScrollableView를 가져올 수 있습니다. 이 ScrollableView는 을 사용하여 스크롤 논리를 적용합니다.

var scrollableView, 
     scroller, 
     containerList 

    containerList = Ext.Viewport.add({ 
     scrollable: true, 

     // creating a few items to make the container overflow. 
     defaults: { 
      style: 'background-color: hsl(180, 45%, 85%);', 
      padding: 30, 
      margin: 20 
     }, 

     items: function(){ 
      var ar = []; 

      for(var i = 0; i < 30; i++) { 
       ar.push({ html: 'item ' + i}); 
      } 

      return ar; 
     }() 
    }); 
    scrollableView = containerList.getScrollable(); 

    scroller = scrollableView.getScroller(); 

    scroller.scrollBy(0,99999); 

예는 실행 가능한 여기에 있습니다 : https://fiddle.sencha.com/#fiddle/5pm

참고 : 내가 scrollBy Y로 99999을 사용하고 있는데 왜 스크롤이 scrollToEnd라는 방법이 있지만 예상대로 어떻게 든이 작동하지 않았다, 이는 논의.

+0

좋아 나는이 시도를 줄 것이다. 고마워. –

0

은 여기 나를 위해 작동 방법은 다음과 같습니다

var mainContainer=this.getDetailContainer();  
var scroller = mainContainer.getScrollable().getScroller(); 
scroller.scrollToEnd(true); 
+0

해답을 많이 주셔서 감사합니다하지만 scrollToEnd 시도했는데 그것은 나를 위해 작동하지 않았다 : ( –

관련 문제