JavaScriptの修正対応をお願い致します。


拾ってきたスクリプトなのですが、11枚の画像を読み込んで表示しております。
それが、左にスクロールされるプログラムです。
最後の11枚目の表示になると、次の12枚目(1枚目に戻したい)が11枚目の右に表示されており、
それを永遠とループ表示したいです。

以下のURLにそのプログラムを置いております。
http://www.geocities.jp/koooo_suke/

12枚目(元々1枚目の画像)の表示の際に、13枚目(2枚目の画像)が表示されず、
12枚目の画像が一番左に移動した瞬間に13枚目以降がバッと表示されます。

違和感がある表示なので、ずっとループがされているように見えるように修正をお願いしたいです。
私も修正に挑戦してみましたが、JavaScriptがとても見にくく、よく分からず断念致しました。
宜しくお願い致します。


CSSとJavaScriptは、ここに貼るととても長かったので、先程のURLのソースをご覧下さい…。

↓ソースの直リンクはコチラ
http://www.geocities.jp/koooo_suke/js/scrollable-horizontal.css
http://www.geocities.jp/koooo_suke/js/scrollable-buttons.css
http://www.geocities.jp/koooo_suke/js/jquery.tools.min.js

回答の条件
  • 1人2回まで
  • 13歳以上
  • 登録:2010/07/03 00:48:27
  • 終了:2010/07/04 23:37:12

ベストアンサー

id:pacochi No.1

ぱこち回答回数246ベストアンサー獲得回数1112010/07/03 05:56:57

ポイント100pt

jquery.tools.min.js の 215行目あたりにある

s=a.getItems().eq(1).clone().appendTo(g);

という部分を、

s=a.getItems().slice(1).clone().appendTo(g);

のように書き直すと、ループっぽく見えるようになります。若干無駄がありますが。


あと、単なるお節介なのですが、ご自分で修正に挑戦するつもりがある場合は、圧縮前のソースを見た方が分かりやすいと思いますよ。

私が修正した箇所は、ダウンロードページから落とせる scrollable.js で言うと、194行目あたりの

cloned2 = self.getItems().eq(1).clone().appendTo(itemWrap);

という部分です。

id:nink

おおお!たしかにループしているように見えています!

ありがとうございます。

私はJavaScriptの理解がまだ低いので、修正に時間が掛かってしまうのが現状ですので、

pacochiさんの修正内容をそのまま利用させて頂きます!

ありがとうございました!

2010/07/04 23:34:07
  • id:rouge_2008
    別のプラグインを使用してはいかがでしょうか?

    jCarousel Lite
    http://www.gmarwaha.com/jquery/jcarousellite/
    ※表示枚数は「visible」で変更できます。


  • id:Cherenkov
    賛成。scrollableのcircular機能がバグってます。

    コード整形は http://jsbeautifier.org/ こちらでできました。
  • id:nink
    rouge_2008さん、Cherenkovさん、ご提案のコメントありがとうございます。
    pacochiさんにより、希望の動作が出来たので、
    この修正内容で完了としておきます。

    また新たな問題が出てきた場合は、再度検討させて頂きます。
    本当にありがとうございました!

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません