Accueil > Forum > > > > Coordonnées +SCROLL
Coordonnées +SCROLL
vendredi 17 février 2006 à 22:41:57 |
Coordonnées +SCROLL

batmanu
|
Bonjour, alors voilà, je cherche à récupérer les coordonnées de ma souris, oui mais... je voudrais aussi y ajouter la différence de scrolling de la fenêtre pour que ça soit bien au bon endroit vu que c'est calqué sur les coordonnées de la souris. voici mon code: function ici() { Xpos = event.clientX + document.body.scrollLeft Ypos = event.clientY + document.body.scrollTop; } mais document.body.scrollLeft (et Top) restent constant malgrès le déplacement de la barre de scroll. j'ai tout retourné, il y a sûrement quelquechose qui m'échappe... a l'aide plize :)
|
|
samedi 18 février 2006 à 10:07:34 |
Re : Coordonnées +SCROLL

bultez
|
Bonjour, si je lis bien, normalement c'est bon, enfin avec IE. un peu plus de code c'est possible ? Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
|
|
samedi 18 février 2006 à 12:04:26 |
Re : Coordonnées +SCROLL

batmanu
|
Bonjour, pour toi, tout est possible, je cherche à afficher une infobulle en survol de lien, voici les fonctions et l'appel (je ne comprends pas pourquoi ça ne marche pas):
<head> var chaine = "<div id='text' style='position:absolute; left:4px; top:80px; width:1px; height:1px;'></div>"+"<Layer name='text' left='4' top='80' width='100' height='16'></Layer>"; document.write(chaine); bname = navigator.appName; var Xpos = 0; var Ypos = 0; bversion = parseInt(navigator.appVersion); var ebulle = 0; if (bname == "Netscape") { brows = true; } else { brows = false; } if(brows) { document.captureEvents(Event.MOUSEMOVE); function MouveA(evnt) {//netscape Xpos = evnt.pageX + window.pageXOffset; Ypos = evnt.pageY + window.pageYOffset; } document.onMouseMove = MouveA; } else { function MouveB() {//ie ---- //mystère de cotes à éclaircir, ça bouge quand on scroll dans la page: il ne prend pas en compte le scrolling dans la page Xpos = event.clientX + document.body.scrollLeft;//visiblement le deuxième terme reste constant Ypos = event.clientY + document.body.scrollTop;//visiblement le deuxième terme reste constant } document.onmousemove = MouveB; } function bubulle() { var cx; var cy; cx = Xpos + 16; cy = Ypos - 16; if (brows) { document.text.left = cx; document.text.top = cy; } else { document.all.text.style.left = cx; document.all.text.style.top = cy; } setTimeout("bubulle()", 10); } function bulle(texte) { if (ebulle == 0) { if (brows) {//netscape document.layers['text'].document.writeln('<table border=0 cellspacing=1 bgcolor="#000000"><tr><td bgcolor="#FFFFFF"><font color="#000000" size=2 face=arial><nobr>'+texte+'</nobr></font></td></tr></table>'); document.layers['text'].document.close(); } else {//ie text.innerHTML = '<table border=0 cellspacing=1 bgcolor="#000000"><tr><td bgcolor="#FFFFFF" style="padding:6px;" class="degrad"><font color="#000000" size=2 face=arial><nobr>'+texte+'</nobr></font></td></tr></table>'; } ebulle = 1; } } function cbulle() { if (brows) { document.layers['text'].document.writeln(''); document.layers['text'].document.close(); } else { text.innerHTML = ''; } ebulle = 0; } </head>
<body onload="bubulle();"> <a href="#1" onmouseover="bulle('<i><b> Infos sur lien survolé 01:</b></i><br><hr size=\'1\'>le texte est mis directement dans l\'appel<br>de fonction et c\'est très pratique.<br><br>Il faut juste bien penser aux apostrophes<br>et redimentionner correctement la bulle<br>avec des sauts de ligne en html.')" onmouseout="cbulle()">lien avec bulle en survol 01</a><br><br> <map name="#2"></map> <a href="#2" onmouseover="bulle('<i><b> Infos sur lien survolé 02:</b></i><br><hr size=\'1\'>le texte est mis directement dans l\'appel<br>de fonction et c\'est très pratique.<br><br>Il faut juste bien penser aux apostrophes<br>et redimentionner correctement la bulle<br>avec des sauts de ligne en html.')" onmouseout="cbulle()">lien avec bulle en survol 02</a><br><br> <map name="#3"></map> </body>
Ca marche quand il n'y a pas de scroll, dès qu'on bouge, ça décale tout: c'est un vrai mystère. merci pour ton aide :)
|
|
samedi 18 février 2006 à 12:47:38 |
Re : Coordonnées +SCROLL

bultez
|
Bonjour,
désolé...ça marche sans aucun souci avec IE ( je craignais de ne plus savoir lire ) "faut-y" regarder avec le renard de feu ( je ne l'ai pas fait ) ?
<head> <script type="text/javascript"> var chaine = "<div id='text' style='position:absolute; left:4px; top:80px; width:1px; height:1px;'></div>"+"<Layer name='text' left='4' top='80' width='100' height='16'></Layer>"; document.write(chaine); bname = navigator.appName; var Xpos = 0; var Ypos = 0; bversion = parseInt(navigator.appVersion); var ebulle = 0; if (bname == "Netscape") { brows = true; } else { brows = false; } if(brows) { document.captureEvents(Event.MOUSEMOVE); function MouveA(evnt) {//netscape Xpos = evnt.pageX + window.pageXOffset; Ypos = evnt.pageY + window.pageYOffset; } document.onMouseMove = MouveA; } else { function MouveB() {//ie ---- //mystère de cotes à éclaircir, ça bouge quand on scroll dans la page: il ne prend pas en compte le scrolling dans la page Xpos = event.clientX + document.body.scrollLeft;//visiblement le deuxième terme reste constant Ypos = event.clientY + document.body.scrollTop;//visiblement le deuxième terme reste constant } document.onmousemove = MouveB; } function bubulle() { var cx; var cy; cx = Xpos + 16; cy = Ypos - 16; if (brows) { document.text.left = cx; document.text.top = cy; } else { document.all.text.style.left = cx; document.all.text.style.top = cy; } setTimeout("bubulle()", 10); } function bulle(texte) { if (ebulle == 0) { if (brows) {//netscape document.layers['text'].document.writeln('<table border=0 cellspacing=1 bgcolor="#000000"><tr><td bgcolor="#FFFFFF"><font color="#000000" size=2 face=arial><nobr>'+texte+'</nobr></font></td></tr></table>'); document.layers['text'].document.close(); } else {//ie text.innerHTML = '<table border=0 cellspacing=1 bgcolor="#000000"><tr><td bgcolor="#FFFFFF" style="padding:6px;" class="degrad"><font color="#000000" size=2 face=arial><nobr>'+texte+'</nobr></font></td></tr></table>'; } ebulle = 1; } } function cbulle() { if (brows) { document.layers['text'].document.writeln(''); document.layers['text'].document.close(); } else { text.innerHTML = ''; } ebulle = 0; } </script> </head> <body onload="bubulle();"> <script type="text/javascript"> for ( var n=0;n<100;n++ ) document.writeln(n+"<br />"); </script> <a href="#1" onmouseover="bulle('<i><b> Infos sur lien survolé 01:</b></i><br><hr size=\'1\'>le texte est mis directement dans l\'appel<br>de fonction et c\'est très pratique.<br><br>Il faut juste bien penser aux apostrophes<br>et redimentionner correctement la bulle<br>avec des sauts de ligne en html.')" onmouseout="cbulle()">lien avec bulle en survol 01</a><br><br> <map name="#2"></map> <a href="#2" onmouseover="bulle('<i><b> Infos sur lien survolé 02:</b></i><br><hr size=\'1\'>le texte est mis directement dans l\'appel<br>de fonction et c\'est très pratique.<br><br>Il faut juste bien penser aux apostrophes<br>et redimentionner correctement la bulle<br>avec des sauts de ligne en html.')" onmouseout="cbulle()">lien avec bulle en survol 02</a><br><br> <map name="#3"></map> </body> Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
|
|
samedi 18 février 2006 à 13:30:27 |
Re : Coordonnées +SCROLL

batmanu
|
tu as essayé en rajoutant des br en quantité à la fin pour simuer une page plus longue ? pour moi, ça ne marche ni sous ie6 ni sous ie5, ni sous firefox, quand à ma vieille version de safari sous mac elle est à l'agonie... comprends pas.
|
|
samedi 18 février 2006 à 16:19:54 |
Re : Coordonnées +SCROLL

bultez
|
>>tu as essayé en rajoutant des br en quantité à la fin pour simuer une page plus longue ? oui bien sûr. moi : PC, Windows XP sp2 tout à jour, Internet Explorer 6. mais j'avais testé, en son temps, avec Windows 98... scroll??? n'existent pas depuis hier, il me semble a-t-on tout ? Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
|
|
dimanche 19 février 2006 à 13:30:46 |
Re : Coordonnées +SCROLL

batmanu
|
ben oui, on a tout, c'est un bien grand mystère, je vais essayer de mettre en ligne, peut être que le décalage vers le haut va disparaitre? je vais éplucher également le reste du fichier des fois que j'ai une variable qui fasse deux choses à la fois...
|
|
dimanche 19 février 2006 à 13:57:03 |
Re : Coordonnées +SCROLL

batmanu
|
je n'ai rien trouvé, c'est sûrement le reste du code qui fait interférence, je t'enverais bien le code complet, on pourait faire ça en mail direct?
|
|
dimanche 19 février 2006 à 15:16:46 |
Re : Coordonnées +SCROLL

bultez
|
soit donner l'adresse où on peut voir, en ligne soit me l'envoyer effectivement par mail, et on promet de mettre la réponse ici, si on trouve... mon mail : marcel point bultez arobase tiscali point fr à priori l'erreur vient sûrement d'ailleurs ? Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
|
|
samedi 25 février 2006 à 15:28:15 |
Re : Coordonnées +SCROLL

bultez
|
comme de bien entendu, jai pommé tes coordonnées et j'ai fait un ch'tit exemple qui gère ce "scroll" donc je le poste ici, comme on avait dit qu'on donnerait les pistes.. mais il faudra corriger les erreurs de script dans ce que tu m'as envoyé ( que j'ai sucré aussi !!! )
<html> <head> <!--#### fonctions+provoquer le scroll ####--><script type="text/javascript"> for ( var n=0;n<100;n++ ) //#### ça c'est pour provoquer le scroll #### { document.writeln(n+"<br />"); } function cache() //#### cache l'info bulle #### { b.style.display="none"; } function montre() //#### place et montre l'info bulle #### { if (ie) { //#### ici c'est IE #### b.style.left=event.x+document.body.scrollLeft; b.style.top=event.y+document.body.scrollTop; } else { //#### et là... les autres #### b.style.left=evt.pageX; b.style.top=evt.pageY; } b.style.display="inline"; } </script> </head> <body> <!--#### ça c'est une info bulle par exemple #### --><div id="bulle" style=" background-color:#FFFF00; width:250px; height:60px; border:1px solid #FF6A22; position:absolute; z-index=1; display:none;"> exemple de texte<br /> mais on y met ce qu'on veut<br /> du html, des images... </div> <!--#### la "zone" pour laquelle faire une info bulle ####--><input type="text" id="txt" onmouseout="cache();" value="pour info bulle" /> <br /><br /><br /><br /><br /> <!--#### initialisation ####--><script type="text/javascript"> var b=document.getElementById("bulle"); var ie = false; /*@cc_on ie = true; @*/ //#### çà çà teste IE et ... les autres #### --> document.getElementById("txt").onmouseover = function(event) { //#### provoque sur l'évênement nonmouseover, l'appel de la fonction montre #### --> evt = event ? event : window.event; montre(evt); } </script> </body> </html>
Cordialement. Bul. ~ Mon Site qu'il est à Moi ~
|
|
Cette discussion est classée dans : document, scroll, souris, body, coordonnées
Répondre à ce message
Sujets en rapport avec ce message
Sous menu [ par jeff_the_lifeguard ]
J'aimerai savoir comment pourrais-je faire pour ajouter un sous menu à un menu clique droit. Voice le code#menu{position:absolute;width:155px;border:3
Redimenssionnement proportionnel d'une fenêtre [ par lacouine ]
Bonjour,Mon problème est simple mais à la fois compliqué... Cela fait 2 jours que je planche dessus sans pouvoir la parade. Si quelqu'un pouvait m'aid
script "Imprimer une zone dans une page web" [ par JPhL ]
Bonsoir à tous,Je voudrais imprimer un cadre d'une page web. J'ai donc mis ce script dans la zone à imprimer. Tout fonctionne extra sauf que ma page i
pb de neige qui ne tombe pas [ par Mr spud ]
bonjour.....j'ai pris le code de neige en hiver feuille en automne et j'ai un message d'erreur quand je regarde la page....."objet requis"voici la lig
Evènement onResize [ par initnocsib ]
Je souhaite afficher plus ou moins de photos dans un bandeau en fonction de la taille de la fenêtre. voici le code : if (document.body) { var larg =
utilisation de createTextRange() [ par rttb ]
Salut,Mon probleme est le suivant :J'utilise : window.document.body.createTextRange()Cela fonctionne bien mais c'est le 'body' qui me perturbe, en eff
Problème avec document.body.clientHeight [ par Sb01 ]
Salut à tous,J'aimerai positionner un calque dans ma page en fonction de la résolution de l'écran. Pour la largeur j'utilise la propriété document.bod
deplacer une image à des coordonnées [ par gnosis35 ]
salut voilà le pb : je clic sur une image et là j'ai pour tester deux texts box qui récupérent les coordonnées x,y de la souris... bon ça c tres bi
Hauteur d'un document [ par fab4001 ]
Salut, je voudrais savoir si il est possible de récupérer la hauteur d'une page html en javascript (pas la hauteur du browser !!) ou bien de detecter
modification script -- centrer [ par pusse ]
Salut a tous j'ai recuperer un script sur le net qui me permet de creer un liste defilante de liens horizontalement avec action sur des fleches. Le s
Livres en rapport
|
Derniers Blogs
JOYEUX ANNIVERSAIRE NIXJOYEUX ANNIVERSAIRE NIX par ebartsoft
Souhaitons un bon et joyeux anniversaire à notre hôte à tous, Nix.
Je ne le répéterais jamais assez mais sans lui rien ne serait possible. Il défit en permanence les lois de la gravité et comme il le dit si bien, si tu lui fais confiance ça devra...
Cliquez pour lire la suite de l'article par ebartsoft IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc
Forum
UTILISER UN .JSUTILISER UN .JS par zaikoe
Cliquez pour lire la suite par zaikoe
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|