11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour à tous,

Débutant, je me suis lancé tête baissée, en codant du JS incompatible. Bref, mon gros soucis est un soucis de compréhension. Mon but est de gérer les coord. de la souris pour ouvrir un popup, ou bien un menu Contextuel CSS avec une DIV.

Vous avez devinez: je code du genre

a écrit :
function aideNummat()
{
var ll = event.screenX-15;
var lt = event.screenY+15;
sChaine = "g_filtre_nummat.aspx"
c = window.open.... avec top=lt, etc...
}


Bref, vous avez compris, cela ne fctionne pas avec FF. Je crois comprendre qu'il faut déclarer le Onclick ailleurs... mais où, et quelle manière car ma problématique est:

J'aimerai utilisé un fichier .js [b]commun[/i] à mes pages et le Onclick peut se déclencher à partir de plusieurs objets différents...

Merci de vos réponses éclairées.

Patrick
Modifié par pmorestin (12 Mar 2005 - 11:17)
Voici un script qui capture la position de la souris sur l'écran. Je t'ai mis donc les différentes conditions à mettre pour capturer l'événement.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr">
	<head>
		<title></title>
		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-15" />
		<script type="text/javascript">
		<!--
		function captPosition(evt)
		{
			var x = 0;
			var y = 0;
			if (document.layers)
			{
				x = evt.x;
				y = evt.y;
			}
			if (document.all)
			{
				x = event.clientX;
				y = event.clientY;
			}
			else
			{
				if (document.getElementById)
				{
					x = evt.clientX;
					y = evt.clientY;
				}
			}	
			document.getElementById('inputX').value = x;
			document.getElementById('inputY').value = y;
		}
		if (document.layers)
		{
			document.captureEvents(Event.MOUSEMOVE);
		}
		if (document.layers || document.all)
		{
			document.onmousemove = captPosition;
		}
		if (document.addEventListener)
		{
			document.addEventListener('mousemove', captPosition, true);
		}
		-->
		</script>
	</head>
	<body>
		<div>
			X : <input id="inputX" />
			Y : <input id="inputY" />
		</div>
	</body>
</html>