質問

私はjQueryの中に2つのプラグインで働いています:jquery.scrollToとjquery.Colorboxと私は非常に簡単だと思い、問題を抱えている。

私は何をしたいscrollToイベントが終了した直後にカラーボックスを発射することです。

ScrollToは、実際に設定onAfterでコールバックをサポートしており、それは簡単な警告()メッセージで動作します。私はカラーボックスを実行する関数を記述するときしかし、それは動作しません:。カラーボックスはscrollToと一緒に実行する(ウィンドウのスクロールやカラーボックスのdivが開きます)

私は、次のコードを持っています:

<script type="text/javascript">
 $(document).ready(function(){
  function abreCbox(){
   $(".abrircbox").colorbox({width: "50%",inline: true, href:"#inline_example1"})
  }

  $.scrollTo('#home',{offset: {left: -100, top: -100}});

  $.localScroll({
   axis: 'xy',
   queue: true,
   duration: 1800,
   onAfter: abreCbox,
   offset: {left: -100, top: -100}
  });  
 })
</script>

私はonAfter機能がどのように動作するか分からないので、私は助け= D

のために物乞いをしています

どうもありがとうございましたありがとうございます。

役に立ちましたか?

解決

あなたがこのコードのビットを持っている。

function abreCbox(){
   $(".abrircbox").colorbox({width: "50%",inline: true, href:"#inline_example1"})
}

あなたの$(document).ready(function() ...内部、文書の準備ができたときに、それが実行されるという意味。
onAfter部分はokです、あなただけの外側の関数の宣言を移動する必要があります。

//for reuse later
function abreCbox(){
 $(".abrircbox").colorbox({width: "50%",inline: true, href:"#inline_example1"})
}
$(document).ready(function(){
  $.scrollTo('#home',{offset: {left: -100, top: -100}});

  $.localScroll({
   axis: 'xy',
   queue: true,
   duration: 1800,
   onAfter: abreCbox,
   offset: {left: -100, top: -100}
  });  
 });
あなたは、後で関数abreCboxを再利用すると予測していない場合は、

、このように、完全に宣言をonAfterし、削除するために無名関数を渡すことをお勧めします:

$(document).ready(function(){
  $.scrollTo('#home',{offset: {left: -100, top: -100}});
  $.localScroll({
   axis: 'xy',
   queue: true,
   duration: 1800,
   onAfter: function (){
       $(".abrircbox").colorbox({width: "50%",inline: true, href:"#inline_example1"});
   },
   offset: {left: -100, top: -100}
  });  
});
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top