2013-10-21 2 views
2

모바일 하이브리드 응용 프로그램에서 작업 중입니다.javascript를 사용하여 div에서 스크롤 위치를 재설정하는 방법

내 HTML 페이지에는 3 개의 탭이 있습니다. 탭을 클릭하면 스크롤 가능한 div의 내용이 변경됩니다. 내 문제는 div (보기)의 내용을 아래로 스크롤하고 다른 탭을 클릭하면 내용이 사라집니다 (그러나 내용이 있음).

그래서 어떤 탭을 클릭해도 위치를 재설정 할 수 있도록 도와주세요.

JQuery 라이브러리를 사용하지 않으므로 JQuery와 함께 사용하지 말고 JavaScript 또는 CSS로만 알려주십시오.

+4

'제발 javascript_로 제안 해주세요'가장 흥미롭게도 단순화 된 js 라이브러리에 관심이 없다면 jquery 태그를 추가하면 안됩니다. – Jai

+0

나는 jquery 태그를 포함하고 있기 때문에보기를 최대화하고 jquery가 Javascript 라이브러리라는 것을 알고 있기 때문에 jsut를 포함하고있다. – anand4tech

+4

그러면'pron' 태그도 포함시켜야합니다 : 농담 그냥 – Stphane

답변

0

마지막이

function resetScrollPos(selector) { 
    var divs = document.querySelectorAll(selector); 
    for (var p = 0; p < divs.length; p++) { 
    if (Boolean(divs[p].style.transform)) { //for IE(10) and firefox 
     divs[p].style.transform = 'translate3d(0px, 0px, 0px)'; 
    } else { //for chrome and safari 
     divs[p].style['-webkit-transform'] = 'translate3d(0px, 0px, 0px)'; 
    } 
    } 
} 
resetScrollPos('.mblScrollableViewContainer'); 
나를 위해 일한 쉽게

뷰 간 전환 후이 함수를 호출하면 스크롤 위치가 재설정됩니다.

7

코드를 보지 않고도 나는 추측 할 수 있습니다. 당신이 스크롤 위치를 재설정 할 경우 모든 탭을 클릭 어느 때 있도록 단순히

window.scrollTo(0,0); 

이 각 탭 클릭 기능이 코드를 추가 할 수 있습니다, 그것은 맨 위로 재설정합니다. 당신이 오버 플로우 속성이 특정 사업부가있는 경우

var myDiv = document.getElementById('specificDiv'); 
myDiv.scrollTop = 0; 
+0

그림자가 아닙니다. 감사합니다 – anand4tech

+0

@ anand4tech 당신이 바이올린을 설정할 수 있습니다 – Shadow

+0

내 코드와 논리는 약간의 복잡한 바이올린에 표시됩니다. 내 요구 사항에 따라 참조를 제공 할 수 있다면. 감사합니다 – anand4tech

1

<div id="test" style="height:150px; width:600px;overflow-y:auto;background-color:gray;"> 
    <div style="width:150px;height:500px; background-color:green;"></div> 
</div> 
document.getElementById('test').scrollTop =0; 
+1

, 나 – anand4tech

+0

반드시 DIV에 속한 것은 아니지만 스크롤해야 할 UL이 될 수 있습니다. –

관련 문제