Sie sind hier:  Home > Forum
 
Zurück   dsl-user.de Board - DSL - Hilfe - DSL einrichten > Computer und WWW > Für Webmaster
Benutzername
Kennwort

Für Webmaster Alles was mit dem Erstellen zu tun hat, HTML, XML, PHP, Webspace

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 17.11.2006, 17:13
Benutzerbild von RaBe59
Registrierter Nutzer
 
Registriert seit: 30.08.2004
Ort: Karlsruhe
Beiträge: 1.486
Events onClick und onDblClick in gleichem <tag>

Ich schlage mich gerade mit dem Problem herum, dass das event OnClick auch bei einem Doppelklick ausgeführt wird. Und zwar vorher, da es ja bereits beim ersten Klick eintritt.

Irgendeine Idee?
__________________
Hardware ist weiblich und benimmt sich auch so, wenn man sie falsch begreift!!
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 17.11.2006, 17:31
Benutzerbild von logiman87
îî__ !! ich liebe ihn !!
 
Registriert seit: 11.05.2002
Ort: Stuttgart
Alter: 24
Beiträge: 1.842
Ich würde das spontan mit einem Timer lösen.
In der onClick-Funktion startest du einen Timer (setInterval()) und wartest die Zeit X. Wenn in dieser Zeit kein weiterer Klick erfolgt ist (über globale Variable merken!), dann wird die Aktion ausgeführt. Also ohne den on DblClick-Event.
__________________

Geändert von logiman87 (17.11.2006 um 17:43 Uhr).
Mit Zitat antworten
  #3 (permalink)  
Alt 17.11.2006, 17:45
Benutzerbild von Quidoff
wie auch immer
 
Registriert seit: 03.04.2004
Ort: Jossgrund
Alter: 23
Beiträge: 1.016
logiman hat eigentlich schon alles wichtige gesagt. Deshalb von mir nur den passenden Code:
Code:
<head>
<title>(Doppel-)Klick-Test</title>
<script type='text/javascript'>
<!--

	var bIsDblClick = false;
	var clickTimer;

	function dblClick() {
		bIsDblClick = true;
		window.clearTimeout(clickTimer);
		document.getElementById('dclick').style.visibility='';
	}

	function click() {
		if(!bIsDblClick) document.getElementById('click').style.visibility='';
	}
//-->
</script>
</head>

<body>
<a href="#" onclick="bIsDblClick = false;clickTimer=window.setTimeout('click()', 250);" ondblclick="dblClick();">Klick</a>

<br/><br/>
<span id="click" style="visibility: hidden;">Click</span>
<br/>
<span id="dclick" style="visibility: hidden;">DoubleClick</span>

</html>
Mit Zitat antworten
  #4 (permalink)  
Alt 17.11.2006, 18:04
Benutzerbild von RaBe59
Registrierter Nutzer
 
Registriert seit: 30.08.2004
Ort: Karlsruhe
Beiträge: 1.486
Danke!

Der Trick liegt tatsächlich im Timer. Ich habe es in etwa so gemacht:
<A ondblclick="document.form1.doubleclick.value='ja'" onclick="window.setTimeout('document.form1.submit( );',300)" title="Klick oder Doppelklick"><img SRC="..."></A>

Ohne den Timeout würde das Formular abgeschickt bevor der Wert eingetragen wurde.
__________________
Hardware ist weiblich und benimmt sich auch so, wenn man sie falsch begreift!!
Mit Zitat antworten
  #5 (permalink)  
Alt 20.11.2006, 15:34
Benutzerbild von logiman87
îî__ !! ich liebe ihn !!
 
Registriert seit: 11.05.2002
Ort: Stuttgart
Alter: 24
Beiträge: 1.842
Ich war nur etwas in Eile, sonst hätte ich auch Code gepostet.... aber dank Quidoff hat sich das ja erledigt
__________________
Mit Zitat antworten
Sponsored Links
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
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 are an
Pingbacks are an
Refbacks are an



Alle Zeitangaben in WEZ +1. Es ist jetzt 13:30 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.3.0
© 2002-2012 - www.dsl-user.de -