Centrer la page à l'endroit où l'on a cliqué

loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011 - 2 sept. 2008 à 17:39
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011 - 5 sept. 2008 à 19:51
Bonjour à tous,
j'aimerais que vous m'aidiez à réaliser un code qui permettrait de centrer la page à l'endroit où l'on clique.
Par exemple : si l'on clique à un endroit de la page où se trouve la lettre "a", il faut que cette lettre soit centré verticalement et horizontalement. Ma page posséde de grande barre de scrolling (détail important il me semble).

Pour l'instant j'ai ce code mais ce n'est pas le bon, je pense qu'il y a ici une base mais je n'arrive pas à faire en sorte que la fonction s'applique à la page et non à l'image :

<SCRIPT>
function deplace(){
var igrec=window.event.offsetY
var ixe=window.event.offsetX
document.getElementById('oxo').style.top=igrec+'px';
document.getElementById('oxo').style.left=ixe+'px';
}
 </SCRIPT>&nbsp;

Merci d'avance pour votre aide !

26 réponses

XtremDuke Messages postés 626 Date d'inscription samedi 28 septembre 2002 Statut Membre Dernière intervention 18 mai 2009 4
3 sept. 2008 à 17:26
Ha ca y est j'ai compris...

Essai ça :

<!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" xml:lang="fr" lang="fr">
<head>
<title>exemple</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
</head>

************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO

OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO

OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO

OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO

OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO
OO

************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************

   
   
<script type="text/javascript">
    var isIE =  !!(window.attachEvent && !window.opera) ? true : false;
   
    function getWindowDimensions(){
        var width = document.documentElement['clientWidth'];
        var height = document.documentElement['clientHeight'];
        return {width: width, height: height};
    }
   
    function addEvent(elt, eEvent, fCallBack){
        isIE ? elt.attachEvent('on'+eEvent, fCallBack) : elt.addEventListener(eEvent, fCallBack, false);
    }
   
    function centerView(event){
        var cursorPosition = {
            x: event.pageX || (event.clientX + (document.documentElement.scrollLeft || document.body.scrollLeft)),
            y: event.pageY || (event.clientY + (document.documentElement.scrollTop || document.body.scrollTop))
        }
        document.getElementById('pointer').style.left = cursorPosition.x-4+'px';
        document.getElementById('pointer').style.top = cursorPosition.y-4+'px';
        document.getElementById('pointer').style.display = 'block';
        window.scrollTo(cursorPosition.x-(getWindowDimensions().width/2), cursorPosition.y-(getWindowDimensions().height/2));
    }
   
    addEvent(document, 'click', centerView);
</script>

</html>
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
3 sept. 2008 à 17:31
Ho merci, c'est exactement cela ! Merci merci merci ! Vu le code je n'y serai jamais  arriver seul !
Merci encore pour votre aide !
0
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
4 sept. 2008 à 08:04
surtout que tu parlais de centrer une fenêtre alors qu'il s'agissait de centrer un objet !
CordialementBul[mon Site][M'écrire] |
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
4 sept. 2008 à 17:40
centrer un pixel de la page ce n'est pas une fenêtre si ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
5 sept. 2008 à 07:29
ton titre : Centrer la page à l'endroit où l'on a cliqué
    c'est pour ça qu'on t'avait proposé moveTo ou moveBy
ton js, positionnait un objet en fonction du clic,
    c'est pour ça que je te disais que ça fonctionnait ( avec IE )
ensuite tu affirmais : Je veux que ce soit le contenu de la page qui soit centré
    je t'ai dis :  il te suffit de mettre le style top et left à ce que tu veux, par exemple :
                      top = ( largeur de l'écran - largeur de l'écran ) / 2,  pareil pour left
                      et XTremDuke a fait mieux en te fournissant l'exemple complet.
moi, j'ai quand même  eu du mal à suivre....
CordialementBul[mon Site][M'écrire], <!--
0
loicseg Messages postés 168 Date d'inscription dimanche 26 février 2006 Statut Membre Dernière intervention 30 septembre 2011
5 sept. 2008 à 19:51
Ok bon c'est pas grave. Merci encore à tous !
0
Rejoignez-nous