Zurück   Flashforum > Alternative Technologien > JavaScript & jQuery

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 22-12-2011, 14:12   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2011
Ort: Unna
Beiträge: 216
Post jquery queue

moin,
ich habe einen animation der beim drüberfahren über einen link startet. Aber wenn ich jetzt mehrmals ganz schnell über den link fahre führt er die animation so oft aus wie ich drübergefahren bin mit der maus. Ich will aber das er wenn ich
so ca. 1s auf dem link bin er erst die animation ausführt.

irgwo hatte mir das jemand hier mal erklährt eine queue einzubauen, aber ich finde den beitrag nicht mehr.

wie funktioniert das mit diesem queue? und wie baut man die ein?
aus der documentation von der jquery webseite werde ich nicht ganz schlau :|

wär cool wenn mir wer helfen könnte

grüße arees
arees ist offline   Mit Zitat antworten
Alt 22-12-2011, 15:13   #2 (permalink)
Inventar
 
Benutzerbild von Nightflyer
 
Registriert seit: Jul 2002
Beiträge: 6.882
jQuery macht was es will? ?

Was du aber möchtest ist dass eine Animation erst gestartet werden kann solange keine bereits läuft.

Code:
if( $('#element').queue("fx").length > 0 ){

     return false; //Animation currently running. Abort

}

$('#element').fadeIn() // do new Animation or what else
__________________
(\__/)
(='.'=)
(")_(")

Geändert von Nightflyer (22-12-2011 um 15:15 Uhr)
Nightflyer ist offline   Mit Zitat antworten
Alt 22-12-2011, 15:31   #3 (permalink)
Inventar
 
Benutzerbild von Nightflyer
 
Registriert seit: Jul 2002
Beiträge: 6.882
Beispiel:

Code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<script src="http://code.jquery.com/jquery-latest.js"></script>


<style type="text/css">

	#mydiv{
		position: absolute;
		top: 50px;
		left: 200px;
		width: 100px;
		height: 100px;
		background-color: red;
	}


</style>

<script type="text/javascript">

	$(document).ready( function(){


		$('#mydiv').mouseover( function(){

			if( $(this).queue("fx").length > 0 ){

				return false;

			}

			$(this).animate({ 'left': "+=50px" }, 'slow');

		});

	});
    

</script>


</heady>
<body>

<div id="mydiv"></div>


</body>
</html>
Die Funktion wird nur einmal ausgeführt, danach musst du das div verlassen und neu drüber fahren damit es weiter geht. Nimmst du den Queue-Teil weg, dann fährt das div so lange nach rechts wie du mit der Maus drauf bist.
__________________
(\__/)
(='.'=)
(")_(")
Nightflyer ist offline   Mit Zitat antworten
Alt 22-12-2011, 22:08   #4 (permalink)
Neuer User
 
Registriert seit: Jun 2011
Ort: Unna
Beiträge: 216
Post

wie geht das eigentlich mit dem length genau?

wenn ich jetzt eine auflistung hätte z.b. :

<ul>
<li>hallo</li>
<li>hallo</li>
</ul>

könnte ich dann irgwie mit length den index von den li's berechnen?

mfg
arees ist offline   Mit Zitat antworten
Alt 22-12-2011, 22:18   #5 (permalink)
Inventar
 
Benutzerbild von Nightflyer
 
Registriert seit: Jul 2002
Beiträge: 6.882
Mit $(this) sprichst du ja bereits das jeweilige Element an
__________________
(\__/)
(='.'=)
(")_(")
Nightflyer ist offline   Mit Zitat antworten
Alt 22-12-2011, 22:31   #6 (permalink)
Neuer User
 
Registriert seit: Jun 2011
Ort: Unna
Beiträge: 216
ja aber du schreibst ja if(......length > 0){....}

ich kenne length nur aus html das man da irgwie die anzahl der zeichenketten rausfindet.
arees ist offline   Mit Zitat antworten
Alt 23-12-2011, 06:16   #7 (permalink)
Inventar
 
Benutzerbild von Nightflyer
 
Registriert seit: Jul 2002
Beiträge: 6.882
Richtig, queue ist ein Array wo alle Animationen drin stehen und abgearbeitet werden. Length gibt hierbei die Länge des Arrays an. Wenn grösser Null läuft noch ne Animation.
__________________
(\__/)
(='.'=)
(")_(")
Nightflyer ist offline   Mit Zitat antworten
Alt 23-12-2011, 09:59   #8 (permalink)
NCC 1701 D
 
Benutzerbild von speedjunkie
 
Registriert seit: Oct 2009
Ort: Metropolregion Hamburg
Beiträge: 588
.queue() – jQuery API

Zitat:
Zitat von arees Beitrag anzeigen
so ca. 1s auf dem link bin er erst die animation ausführt.
da dachte ich:

http://api.jquery.com/delay/
__________________
just be Daniel
JUNK FOOD: JavaScript Core Reference

Geändert von speedjunkie (23-12-2011 um 10:01 Uhr)
speedjunkie ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Such nach einer Möglichkeit für eine art Animation Queue razorhawk ActionScript 2 0 23-02-2010 18:28
mouseClick queue phil_heim ActionScript 1 5 07-08-2006 15:28
Bokels LoaderClass - Progress der gesamten Queue -Panda- Flash MX 2004 1 23-06-2005 12:25
Download Queue homeexile PHP und MySQL 2 18-02-2004 12:51
Priority Queue e2e4 Softwarearchitektur und Entwurfsmuster 21 30-08-2003 13:54


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:10 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele