2014-04-30 2 views
1

사용자 정의 스크롤바를 사용하기 위해 jQuery 플러그인 버전 3.10을 사용하고 있습니다. 수많은 가로 슬라이드가 있고 각 슬라이드에는 자체 스크롤 막대가 사용됩니다. 텍스트를 확장하는 javascript .onclick 함수를 포함하고 싶습니다. 그러나 텍스트를 확장하면 오버플로 할 때 스크롤 막대가 나타나지 않습니다. HTML의자바 스크립트 niceScroll 크기 조정 함수

function toggleNext(el) { 
var next=el.nextSibling; 
while(next.nodeType != 1) next=next.nextSibling; 
next.style.display=((next.style.display=="none") ? "block" : "none"); 
} 

function getElementsByTagAndClassName(tag,cname) { 
var tags=document.getElementsByTagName(tag); 
var cEls=new Array(); 
for (i=0; i<tags.length; i++) { 
    var rE = new RegExp("(^|\s)" + cname + "(\s|$)"); 
    if (rE.test(tags[i].className)) { 
    cEls.push(tags[i]); 
    } 
    } 
return cEls; 
} 
function toggleNextByTagAndClassName(tag,cname) { 
var ccn="clicker"; 
clickers=getElementsByTagAndClassName(tag,cname); 
for (i=0; i<clickers.length; i++) { 
    clickers[i].className+=" "+ccn; 
    clickers[i].onclick=function() {toggleNext(this)} 
    toggleNext(clickers[i]); 
} 
} 
window.onload=function(){toggleNextByTagAndClassName('h3','click')} 

예 :

<article class="slide" id="lorem"> 
<div class="inner"> 
<h3 class="click">Lorem Ipsum</h3> 
<div class="content"> 
<p>Sample text, is sample text, is sample text</p> 
</div> 

나는 이전부터 알고 나는 (클래스 "를 클릭"태그 "H3")를 온 클릭 기능이 있어야 제목을 선택하려면 다음 코드를 사용하고 조사한 결과, niceScroll jQuery 플러그인의 resize 함수를 다음과 같이 호출해야한다는 조사가있었습니다.

$(name-of-div).getNiceScroll().resize() 

콘텐츠의 이름으로 div를 사용하여 크기 조정 기능을 사용해 보았지만 예상 한 결과가 나오지 않았습니다. 가능한 경우 도와주세요. 두 가지를 함께 구현하는 방법을 모르겠습니다.

답변

1

무슨 일이 벌어지고 있는지 이해가 잘 모르겠지만 비슷한 문제가 있습니다. setTimeout 내에서 resize()를 사용해보십시오.

"name-of-div"는 스크롤 컨테이너의 이름이어야합니다. 내가 예를 들어 500을 사용

setTimeout(function(){ 
    $('name-of-div').getNiceScroll().resize() 
}, 500); 

하지만 DIV의 텍스트가 동안을 확장하는 경우 당신은 당신의 사업부 애니메이션보다 큰 숫자를 사용해야 애니메이션, 그리고 물론, 코드가 후 실행해야합니다 : 같은 JQuery와 코드는 것 같습니다 모든 상호 작용

관련 문제