2011-06-27 6 views
9

私はペニーオークションサイトを構築しています。私はタイマーを持っています(私はsymfonyフレームワークを使用しています)。ここで私はいくつかの質問と問題があります。jQueryのカウントダウンタイマー

私は、表示する必要があるホームページに約10の製品があります。それらのすべてがカウントダウンタイマー付きです。

  1. テンプレートのアクションでは、私はSTART_TIMEとEND_TIMEと一緒に配列に示したことするために必要なすべての製品をフェッチ:

    は、カウンタが、私は心の中でこれを持っていた、正しく動作するように。 HTMLでは、各製品は、(hours:minutes:secondsを秒(終了しend_time - start_time)

  2. 文書の準備ができて、jQueryのは、ホームページ上のすべての製品を反復処理し、適切な形式に残り時間を変換します含​​まれています隠されたdiv要素を持つことになります)これは私が混乱している部分です - divの時間を減らし、1秒でsetTimeoutを持つ別の関数を呼び出せばいいのですか?

  3. on div.click、jQueryプロダクトの秒divを取り出し、オーバーフローした場合は内容を10増加させ、分を変更し、秒を適切な値に変更します。

私の心配の1つは、jQueryがWebページにいくつの商品があるのか​​を知ることです。私は現在<body onload="func()">を使ってタイマーを起動しています。私はJavaScript/jQueryの新機能ですので、私の質問はタイマーをトリガーするもう1つの良い方法です。また、jQuery関数への製品引数の数を送信しますか?

また、これは十分に速く効果的でしょうか?それはより良くできますか?あなたの第二の点に関しては

今あなたが製品を反復処理するためにclassnameでいくつかのdivの内側にあなたの製品を配置し、jQueryの$.each('.classname')機能を使用することができ、私のコメントで述べたように

+1

あなたの製品を 'classname'でいくつかのdivに入れてから、jQueryの' foreach( '.classname ')'関数を使って製品を繰り返し処理することができます – anu

答えて

1

は、あなたがそれぞれに別々の関数を呼び出すことができますstart-end時間をパラメータとするプロダクトdiv。カウントダウンタイマーを表示するにはhere is a scriptをクリックします。

あなたの3番目の質問について、あなたはあなたが取得する$(".classname").size()を使用することができ、あなたがあなたと一緒にカウントダウン機能を呼び出すことができ、各製品の新しい修正開始値

のすべての製品およびonclickのための現在のtimesatmpを保存する隠しフィールドを作成することができます総製品数

関連する問題