2009-05-29 13 views
0

私はJQueryを初めて使用しています 私のアプリケーションでは、5つのdivがあります。 div要素のいずれかをクリックしている間、私が初めてテキスト/テキストエリア/ドロップダウンをクリックしながら、私は(クリックしたかどうかの確認+ Jquery

Text 
Textarea 
Dropdown 

を持っている他のdivは私のコードで実際に

前にクリックされたかどうかを確認したいですつまり、自分自身を含む他のものが以前にクリックされているかどうかを確認する必要があるため)、それに基づいて進めることができます。

変数が1であると言ったものを使用しても、text/textarea/dropdownのいずれかをクリックしている間に、私がクリックしているかどうか、および他のものが以前にクリックされたかどうかを確認したいという問題が発生しました。

+0

正確にあなたが達成しようとしているあなたの現実のシナリオは何ですか? – duckyflip

+0

最後の段落は、あなたが何を言おうとしているのかがはっきりしないので、改めてお聞かせください。それはあなたの試行のいくつかを投稿し、それに基づいてあなたの問題を指摘してくれればうれしいです。 –

答えて

1

変数で追跡するだけです。この例では、「クリック」は何か(イベントハンドラ関数を生成するクロージャは良い)が定義され、「0」の値または他の真ではない値に初期化されていると想定しています。

if (clicked) { 
    a(); 
} else { 
    b(); 
} 
clicked = 1; 
+0

実際に私のコードで..私はText、Textarea、Dropdown .. Text/textarea/dropdownを最初にクリックすると1つのことをする必要があります。もし私がwatを使っていれば、変数= 1 .. text/textarea/dropdownのいずれかをクリックしている間に問題が発生しました。私は、自分自身を含む他のオブジェクトのどれかが前にクリックされているかどうかをチェックする必要があります。 – useranon

+0

_a_変数はコントロールごとの変数ではありません – Quentin

+0

ただ1つの変数...私はあなたが各コントロールの変数を持っていると言ったものを使用した場合、私はそれらのすべてをチェックする必要がありますか? – useranon

0

正確に何をしようとしているのですか。しかし、一つの可能​​な解決策は、それぞれのdivのための新しい属性を定義する「was_clicked」と言ってみましょうすることであろうとするときは、次の操作を行うことができます:

div.click(function(event) 
{ 
    if ($("div[was_clicked=true]").length > 0) 
    // some of the div was clicked 
    // you can iterate over each clicked div by $("div[was_clicked=true]").each(...) 
    $(this).attr("was_clicked", "true"); 
}); 
関連する問題