2009-04-08 11 views
2

私はFancyBoxプラグインを使用しています。ユーザーが小さな画像をクリックすると、大きな画像がポップアップします。私は1つのイメージでそれを行うためのコードを見ましたが、2ではないので、正しい方法が正しいかどうか不思議です。ファンシーボックスが互いの直後に動作するようにするために、文の要素を置くだけですか?次のJQueryスクリプトを実行するための適切な方法は?

<script type="text/javascript"> 
    $(document).ready(function() { 
     $("a#link1").fancybox(); 
     $("a#link2").fancybox(); 
    }); 
</script> 

答えて

5

あなたはこれがで発生したいいくつかのリンクを持つことを計画している場合、あなただけの彼らにfancyboxのすべてのクラスを与えることができ、その後の操作を行います。

$(function() { 
    $('a.fancybox').fancybox(); 
}); 

あなたは空想する必要があり、新たなリンクを持っている時はいつでもこの方法であなたは彼らに一意のIDを与えて、彼らがinitiliazedされていることを確認するためにjavascriptに戻る必要はありません。要素ごとに2つ以上のクラスを持つことができるので、既存のクラスにも影響しません。ほとんどの場合、クラスを使用することが賢明です。そのため、jQueryで操作するときにクラスを扱うことができます。

+0

ああ、私はこれを忘れることができます。ちょうど興味があります、もし私がそれぞれのイメージのIDを分けてしまえば、私はそれを正しい方法で行ったでしょうか? – Xaisoft

+0

ええ、そう思います。ほとんどの場合、クラスを使用することが賢明です。そのため、jQueryで操作するときにクラスを扱うことができます。 –

1

はいいいですね。

2

いいえ、実行するコードをに設定してください。ブロックです。短い構文を使用することができます

<script type="text/javascript"> 
    $(function() { 
     $("a#link1").fancybox(); 
     $("a#link2").fancybox(); 
    }); 
</script> 

これはまったく同じです。

関連する問題