1

data-countdown 属性に含まれる情報をこの jQuery 関数に渡すにはどうすればよいですか? http://jsfiddle.net/G4qLE/でテストをセットアップしました。これは、時間をハードコーディングすると機能しますが、ハードコードと同じ情報を警告する変数に置き換えると壊れます。私はjQueryが初めてで、間違って何をしているのかわかりません。助けていただければ幸いです。ありがとう。

    <div id="counter" data-countdown="-5, 2013, 5 - 1, 27, 00, 00, 00"></div>

    var countdown = jQuery('#counter').data('countdown');
    //alert(countdown);// alerts -5, 2013, 5 - 1, 27, 00, 00, 00

    jQuery('#counter').countdown({
        until: jQuery.countdown.UTCDate(-5, 2013, 5 - 1, 27, 00, 00, 00),//breaks when replaced with countdown
        compact: true, 
        alwaysExpire: true, 
        expiryText: 'Too Late!'
    });
4

3 に答える 3

1

修正しなければならないことの 1 つは、に変更する5 - 1こと4です。'5 - 1'(そうしないと、パラメーターが文字列であり、無効になるため、Invaid Date が返されます4)

<div id="counter" data-countdown="-5, 2013, 4, 27, 00, 00, 00"></div>

次に、( @Paulproが指摘したように)次のことを行うことができます:

jQuery('#counter').countdown({
    until: jQuery.countdown.UTCDate.apply(jQuery.countdown, countdown.split(/\s*,\s*/)),
    compact: true, 
    alwaysExpire: true, 
    expiryText: 'Too Late!'
});

実際のデモをご覧ください。

于 2013-05-22T20:39:25.860 に答える
1

UTCDate は数値引数の LIST を必要とします。data-countdown から単一の文字列を取得し、それを渡します。個々の値を解析する必要があるようです。

于 2013-05-22T20:29:34.350 に答える