クラス.home
の5つの要素と一意のIDと、.btn1
のボタンがあります。 .btn1
の後に.home
をクリックすると、その逆の場合は、関数を実行する必要があります。私はどのようなjQueryメソッドを使うべきか分かりません。要素のペアがクリックされたときのイベント
0
A
答えて
2
これを試してみてください:
<!DOCTYPE html>
<html>
<head>
<style>
.active {
background-color: skyblue;
}
</style>
</head>
<body>
<div class="home">I am Div1</div>
<div class="home">I am Div2</div>
<div class="home">I am Div3</div>
<div class="home">I am Div4</div>
<div class="home">I am Div5</div>
<button class="btn">Run</button>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script>
$(document).ready(function(){
var divReady = false;
var btnReady = false;
$(".btn").on("click",function(){
btnReady = true;
$(this).addClass("active");
if (divReady)
fun();
})
$("div").on("click",function(){
divReady = true;
$("div").removeClass("active");
$(this).addClass("active");
if (btnReady)
fun();
})
function fun() {
alert("I am working!")
$(".btn,div").removeClass("active");
btnReady = false;
divReady = false;
}
})
</script>
</body>
</html>
0
イベントが発生した回数をカウントし、イベントを保存します。これは配列で簡単に行うことができます。
//create an array to store events
events=[];
//create a handler function
function handler(event){
//add the event to our array
events.push(event);
if(events.length==2){
//two events fired:
//first event:
a=events[0];
//second:
b=events[1];
//do whatever
}
}
//add an eventlistener that calls our handler and passes 'documentclick'
document.addEventListener("documentclick",function(){handler("click")});
+0
あなたの答えを理解するために、簡単な例をスニペットで入力できますか? –
+0
@ LukasBaliūnas:例は自己説明です。あなたが正確に理解できないことを説明してください –
0
具体的なjQueryのトリックはありません。
なぜ状態を格納するためにクラスを使用しないのですか?
$(function() {
$(".home").click(function() {
$(this).addClass("active");
if ($(".btn1").hasClass("active")) {
console.log("Doing something");
}
});
$(".btn1").click(function() {
$(this).addClass("active");
if ($(".home").hasClass("active")) {
console.log("Doing something");
}
}
);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class = 'home'>
Home
</div>
<div>
Stuff
</div>
<button class = 'btn1' >Button</button>
<div class = 'home'>
Home
</div>
<div>
Stuff
</div>
<div class = 'home'>
Home
</div>
<div>
Stuff
</div>
<div class = 'home'>
Home
</div>
<div>
Stuff
</div>
関連する問題
- 1. 要素が要素の内側にあるときに要素がクリックされたときに要素の外側にクリックが検出される関数
- 2. ArrayList要素が変更されたときのイベントの発生
- 3. 複数の要素がクリックされたときの機能
- 4. 委任されたイベントでJqueryが要素をクリック
- 5. 要素を点滅させ、他の要素がクリックされたときに要素を停止させます。
- 6. 要素がクリックされたときにiframeを隠す
- 7. 要素をクリックしていないときにイベントをクリック
- 8. キャンバス要素:画像がクリックされた
- 9. JSループがクリックされた要素を
- 10. WPFルーティングされたイベントでクリックされた要素を区別する
- 11. カバーされたdiv要素のjavascriptイベント
- 12. [routerLink]がクリックされたときの角度2のイベント
- 13. 他の要素がクリックされたときに音が鳴りません
- 14. クリックされた要素へのjQueryポインタ
- 15. jqueryの - クリックされたフィルタオプションとコンテナ要素が
- 16. Angular4 /子要素(クリック)イベント
- 17. 要素がクリックされたときにのみdiv内のiframeをロード
- 18. 画像がロードされたときではなく、要素がクリックされたときにロードする
- 19. 動的要素がクリックされていないイベントをクリックして
- 20. 要素の子がクリックされたときにクリックイベントを無視する
- 21. jquery dblclcikイベントがクリックされた要素を与えていない
- 22. アンカータグがクリックされた要素IDが表示されない
- 23. ItemRendererのチェックボックスがクリックされたときにイベントFireをクリックします。
- 24. ダイナミックに作成された要素jqueryプラグイン内のイベントをクリックしますか?
- 25. は、動的に生成されたHTML要素でイベントの仕事をクリックし
- 26. Javascript/jQuery選択されたオプションが再選択されたときの要素イベントの選択
- 27. イベントがトリガーされたときに要素を隠す/表示する
- 28. 次の要素がクリックされた場合は() - jQueryの
- 29. ボタンをクリックしたときに要素が隠されていない
- 30. vue配列要素がクリックされたときにデータにアクセスします。
あなたは、実行可能デモ/スニペットまたは[JSFiddle](https://jsfiddle.net/)を共有することはできますか? [最小限で完全で検証可能なexample_を作成する](http://stackoverflow.com/help/mcve) – Rayon