1

私はこの問題に何週間も悩まされており、このサイトや他のサイトで何十もの投稿を調査しました。私は非常に基本的な問題を抱えています。#scrollarea1つの Web アプリで、オンザフライで作成、破棄、およびオンザフライで数回再作成されるDIV タグがあります。私の問題は、niceScroll 機能が 1 回しか機能しないことです。2 回目の試行の後、コントロールが得られなくなりました

メソッドを含むいくつかの手法を試しましたがresize()、何も機能しません。また、一度だけ取り付けられるようにするレギュレーターも取り付けましたresize()。繰り返しますが、何も機能しません。

私のコードが安全なドアの後ろにロックされており、スクリプトによってトリガーされていることを考えると、ここで実証するのは非常に困難です。

これを行う方法について誰か提案がありますか?レビューする:

  • ページの読み込み、存在しませ#scrollarea
  • スクリプトが起動#scrollareaし、DIV
  • niceScroll#scrollareaONCEに取り付けられ、完璧に動作します
  • スクリプトが再び起動し、#scrollarea新しいスクロールエリアに置き換えられます
  • どのようなテクニックを使用しても、スクロールバーが機能しなくなりました

試みた方法:

  • 新しいものが到着するniceScrollたびにインストールする#scrollarea
  • 一度インストールniceScrollすれば二度とインストールしない
  • niceScrollONCE をインストールしてから、getNiceScroll().resize()
  • .mouseover()->.resize()テクニックを試みた

すべての手法は、2 回目の使用で使用可能なスクロールバーをレンダリングできません。

4

3 に答える 3

7

更新: 新しい関数が見つかりました!

 var setScroll = function(i) {
        if($(i).length>0)
        $(i).niceScroll().updateScrollBar();
} 

この関数を呼び出して、niceScroll を更新します

setScroll(".classWithNiceScroll");

-----古い方法-----

サイズ変更の代わりにこれを使用

$("idORclass").getNiceScroll().remove()
$("idORclass").nicescroll();
于 2013-12-16T12:35:16.390 に答える
0

特定のイベントがトリガーされたときに動的コンテンツを追加できる空の div を使用して同様の問題が発生しましたが、コンテンツを追加するとスクロールバーが表示されませんでした。スクロールバーの div に、スクロールバーを配置した div をオーバーフローする高さの別の空の div を事前設定することで、機能するようになりました。

于 2015-04-28T18:11:12.333 に答える