2017-03-13 5 views
4

Ist es möglich, eine Funktion nach dem Klick auf Körper rufen Sie dann andere Funktion nach dem zweiten Klick aufrufen?auf Körper Klicken Sie auf eine Funktion nach dem anderen klicken Sie auf eine andere Funktion ausführen

ich habe versucht und dann gestoppt, irgendwelche ideen? um Ihre neueste Ergänzung zu Ihrer Frage, die ich aufgrund meiner Antwort geändert:

$("html, body").one("click",function() { 
    // to something 
} 
+0

Versuchen Sie, Klick- und Doppelklick-Funktionen zu erstellen? – TheMiddleMan

+0

https://api.jquery.com/dblclick/ –

+0

Ich möchte das Hintergrundbild ändern, wenn ich auf "Body" geklickt habe, dann nach dem Klick den Hintergrund ändern, danach eine andere Funktion starten – Raivis

Antwort

4

Sie könnten so etwas wie dies versuchen:

var clicks = 0; 
$("html, body").on("click",function() { 
    if(clicks === 0){ 
     funcA(); 
    } 
    if(clicks > 1){ 
     funcB(); 
    } 
    clicks++; 
} 

Wo funcA und func

+1

Sie können '.one()' nicht in Ihrer Antwort verwenden. Der erste Klick wird ausgelöst und das ist es, keine anderen Ereignisse werden ausgelöst, einschließlich eines weiteren Klicks. Verwenden Sie '.on()' – TheMiddleMan

+1

Man wird einmal pro Element ausführen. Meinst du .on? – PersyJack

+1

@TheMiddleMan Hoppla ... Vielen Dank STRG + C, STRG + V Fehler ... – Christos

0

bearbeiten. Sehen Sie diese Schnipsel:

var myFunctions = []; 
 

 
myFunctions.push(function() { 
 
    $("body").css("background-color", "red"); 
 
}); 
 

 
myFunctions.push(function() { 
 
    $("body").css("background-color", "green"); 
 
}); 
 

 
$("html, body").click(function(){ 
 
    if(myFunctions.length > 0) myFunctions.shift()(); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

+0

danke, das hat für mich funktioniert! – Raivis

0

html Teil:

<input type="button" value="Click Me" /> 

Skript Teil:

$("input").one("click",function() { 
    alert("First Function"); 
    $("input").one("click",function() { 
    alert("Second Function"); 
    }); 
}); 

Demo

+0

Ich verstehe nicht die Verwendung von Eingaben in diesem Fall. Ist es nicht einfacher, den Ereignis-Listener im Body hinzuzufügen? – pzworks

+0

Ja kannst du, nur um die Demo zu zeigen, habe ich die Eingabe hinzugefügt. Anstelle der Eingabe können Sie einen beliebigen Selektor hinzufügen. –

Verwandte Themen