C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.85307 の関連記事表示

<< 0 >>
■85307  Re[2]: JQueryのsortableについて
□投稿者/ ぼぼ -(2017/10/05(Thu) 23:00:41)
    No85298 (WebSurfer さん) に返信

    ご返信ありがとうございます。

    > Sortable
    > http://jqueryui.com/sortable/

    はい。このsortableです。

    > そう言われても、そのソースだけでは「処理がかなり遅くなって」という現象は第三者には見え
    > ないですし、ましてや、何が遅くしている原因なのか、どこがボトルネックなのかの切り分けは
    > 無理そうです。

    画面的にはツリー要素のフォルダカテゴリ描画エリアがあり、もう一つ別に一覧の描画エリアがあります。
    これをD&Dでフォルダの所属を変えたり、表示順を変えたりします。(分かりやすく言うとwindowsのエクスプローラ)


    ここには書いてませんが、sortableの他にdroppableも併用しており、この処理の前にバインディングさせてます。
    ツリー要素ははじめ(onload)から階層以下全てhtmlであるわけではなく、フォルダをクリックした度に通信して、
    配下のフォルダ要素のHTMLを取得しています。

    ですので、通信毎に毎回このsortableを呼ばなければいけないのですが、ここでログで時間を表示するようにした所、
    このsortable()が終わるまで10秒くらいかかっているのが確認できました。

    selectorに問題が無いのは、このようにやってみたからです。

    var aa = $("#treeId").find(".sortable");

    console.log("@1"+newDate().getミリ秒);

    $("#treeId").find(".sortable").sortable(...

    console.log("@2"+newDate().getミリ秒);


    > イベントリスナーを疑っておられるようですが、アップされたソースにある、start, stop, sort
    > に設定された匿名関数のことではないですよね?
    >
    > 何のイベントでどのようなリスナーなのですか? そもそも、それが原因であることはどうやって
    > 調べたのでしょう? それが原因に間違いないのはどのように確認されたのでしょうか? 

    はい。まだ原因を特定できているわけではないのですが、このsortableAPIの中で必ず、mouseupやmousedownなどのイベントを
    発行してるしてるものと思っていますが、それをクリアしないで何度も何度もここを呼ぶ為にイベントが都度溜まってしまっているのでは
    ないか、と疑ってます。

    ですので、一旦画面上のイベントリスナーを取得してクリアできれば改善もされるのではないかと期待しています。

    よろしくお願い致します。
記事No.85295 のレス /過去ログ146より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -