Javascript niceSoll调整大小函数

Javascript niceScroll resize function

本文关键字:函数 调整 niceSoll Javascript      更新时间:2023-09-26

我使用jQuery插件3.10版来使用自定义滚动条。我有许多水平幻灯片,每个幻灯片都使用自己的自定义滚动条。我想要包含用于扩展文本的javascript.onclick函数。但是,当我展开文本时,滚动条不会出现,并且溢出。我使用以下代码来选择应该具有onclick功能的标题(标签"h3",类"click"(:

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')}

HTML示例:

<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>

我从之前的研究中知道,我必须从niceSoll jQuery插件中调用resize函数,如下所示。

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

我尝试过使用名称为div的resize函数作为内容,但这并没有产生预期的结果。如果可以的话,请帮忙。我不知道如何将两者结合起来实施。

不确定是否了解发生了什么,但我也遇到了类似的问题。请尝试在setTimeout中使用resize((。

请注意,"name ofdiv"必须是卷轴容器的名称。jQuery代码看起来像:

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

我使用了500作为示例,但如果您的div的文本在动画时展开,则必须使用比div动画大的数字,当然,代码必须在所有交互之后执行

请参阅下面的问题。有两个答案,对我来说都有效。基本上,我已经应用了那里建议的第二种方法(见第二个答案(。因为,它可以立即工作,而在调整div的大小后,第一个方法似乎不能立即工作。

Jquery漂亮的滚动不工作