0

jQuery関数を介して配列を送信し、配列内の各単語をアニメーション化しようとしています。

var foo = [];

foo[0]= "test1";
foo[1]= "test2";
foo[2]= "test3";

$(document).ready(function(){

  $(".ansy").click(function(){ 

    $.each(foo,function(){

      $('.message').animate({'opacity': 0}, 2000, function () {
        $(this).text("enter text or variable here");
      }).animate({'opacity': 1}, 2000);

    });
  }); 

});

私はstackoverflowの別の場所から取得したコードのブロックを使用しています。これは、「ここにテキストまたは変数を入力」を必要なテキストに置き換えたときに機能しますが、配列を通過させることはできません。$ .each関数を使用しようとしましたが、機能させることができませんでした。文字列をフェードインしてからフェードアウトしてから、配列内の次の文字列をフェードインして、配列の最後に到達するまで続けます。どんな助けでも素晴らしいでしょう。

4

3 に答える 3

0

作業デモ

var foo = ["test1", "test2", "test3"]; //add them all to array at same time

$(document).ready( function() {

    $(".ansy").click( function() {

        $.each(foo, function(index, value) {

            $('.message').animate({'opacity': 0}, 2000, function () {

                $(this).text( value );

            }).animate({'opacity': 1}, 2000);
        });
    }); 
});

使用法の詳細については、 jQueryの$.each()ドキュメントを参照してください。

于 2012-08-19T08:16:15.413 に答える
0

これはあなたが探しているものかもしれません:

var foo = [];

    foo[0]= "test1";
    foo[1]= "test2";
    foo[2]= "test3";

    $(document).ready(function(){

         $.each(foo,function(){
            var temp = this;
            $('.message').animate({'opacity': 0}, 2000, function () {
            $(this).text(temp);
           }).animate({'opacity': 1}, 2000);
    }); 


    });​

そしてフィドル

于 2012-08-19T05:40:35.687 に答える
0

まず、言語構造arrayをjQueryオブジェクトでラップして、jQueryオブジェクトのメソッドを取得します。

$(foo)

次に.each、新しいjQueryで使用しますarray

$(foo).each(function(

index関数がとvalueパラメータを渡していることを確認してください。

$(foo).each(function( i, v ){});

次に、アニメーションを実行します。

$( foo ).each(function( i, v ){
    $('.message')
        .animate({
            'opacity': 0
            },
            2000,
            function(){
                $(this).text(v);
            }
        )
        .animate({
            'opacity': 1
            },
            2000
        );
});

vテキスト値として使用したことに注意してください。

警告され、さまざまなこと.text().html()行います。.html()を使用する特別な理由がない限り、人々は通常望んでい.text()ます。問題が発生した場合に備えて、この点に注意してください。

于 2012-08-19T05:46:43.053 に答える