screenY

  Souris décalée par rapport à l''angle supérieur gauche de l''écran d''affichage

  pageY

  phase de la souris (n''affecte pas sa valeur par la barre de défilement) dans le coin supérieur gauche de la page de décalage

  Sous IE9 ne supporte pas cette propriété

  Mais pour écrire le code calculé. La mise en ?uvre de jQuery:

  Copiez le code est le suivant:

  // Calculer pageX / Y si manquant et clientX / Y disponible

  si (événement.pageX == null && originale.clientX != NULL) {

  un événementDoc = événement.cible.Le document de ownerDocument;

  doc = un événementDoc.documentElement;

  corps = eventDoc.corps;

  event.pageX = origine.clientX + (doc && doc.le corps de scrollLeft && corps.scrollLeft de 0) - (doc && doc.le corps de clientLeft && corps.clientLeft || 0);

  event.pageY = origine.clientY + (doc && doc.le corps de scrollTop && corps.scrollTop de 0) - (doc && doc.le corps de clientTop && corps.clientTop || 0);

  }

  simplement se rendre compte que.

  La souris par rapport à la fenêtre du navigateur décalage plus la barre de défilement de la hauteur du document moins le document caché clientTop.

  Copiez le code est le suivant:

  var = pageY événement.Document clientY +.documentElement. scrollTop-documents.documentElement.clientTop

  Pourquoi faut soustraire le document.documentElement.clientTop

  Ceci est sous le navigateur spécifique à IE8 offset du document, même si le HTML, le corps de remplissage et la marge à 0 n''affectera pas leur valeur.

  Dans le test IE7, get

  Copiez le code est le suivant:

  document.documentElement.clientTop -> 2px documents.documentElement.clientLeft -> 2px

  document.bocy.clientTop -> 0px documents.body.clientLeft -> 0px

  clientY

  Souris décalée par rapport au coin supérieur gauche de la fenêtre du navigateur

  Notez la différence entre clientY et pageY de, clientY lorsque la page est pas de valeur de barre de défilement équivalent à pageY

  ----------------------------------segmentation--------------- --------------------------------

  layerY

  Si la position ne sont pas les éléments de style par défaut de statique, nous disons que cet élément a des propriétés de positionnement.

  élément trouve dans les événements de souris de déclenchement de courant et de ses éléments ancêtres les plus proches ayant des propriétés de positionnement, et sa valeur de décalage de calcul de la souris pour trouver un point diplomatique du coin supérieur gauche de l''élément de bordure en un point par rapport.Si aucun élément de positionnement a des attributs, puis en calculant un décalage par rapport à la page en cours, cette fois-ci est équivalent à pageY.

  

  Sous IE9 ne supporte pas cette propriété, mais peut être remplacé par son offsetY unique,

  offsetY

  Caractéristiques de l''IE spécifiques

  OffsetY layerY différente et que le premier dans la valeur de décalage est calculée par rapport à l''intersection de l''angle supérieur gauche de l''élément de bordure, de sorte que lorsque la souris est sur l''élément de frontière, la valeur de décalage est une valeur négative. De plus offsetY ne se soucie pas de savoir si l''événement déclencheur est un attributs de l''élément de positionnement, il est toujours valeur de décalage est calculée par rapport à l''élément d''événement déclencheur.

  

  étant donné les différents layerY et offsetY, les deux qui utilisent pour être compatibles à la note

  1.élément qui a déclenché l''événement Assurez-vous de définir les propriétés de ciblage.

  2.Le cas d''une trame dans l''élément-dessus de la frontière, layerY offsetY plus d''une valeur de la largeur de la valeur-bordure supérieure.

  Copiez le code est le suivant:

  // élément ici.borderTopWidth doit être calculée sur la largeur réelle de l''élément de cadre.

  var = borderTopWidth fenêtre.getComputedStyle ? fenêtre.getComputedStyle (élément, null).borderTopWidth: element.currentStyle.borderTopWidth;

  var = offsetY événement.offsetY || (événement.layerY + borderTopWidth);

  Par propriétés layerY et offsetY, vous pouvez facilement calculer le décalage de la souris par rapport à un élément de liaison de l''événement de la souris, ce qui est très utile à un moment donné.

  Détail souris ici la propriété de décalage dans la direction verticale, la direction horizontale est similaire à la compensation ne sera pas discuté.

  C''est tout pour l''article, je souhaite que nous puissions aimer.

  Vous pouvez également être intéressé par l''article: js événements de clic de la souris, et d''autres capture dans la fenêtre.pageYOffset et documents.documentElement.scrollTopjs événements de clic de souris écrits et attributs d''objet d''événement dans chaque navigateur décrit CSS réponse de la souris à l''incident, le mouvement, cliquez sur exemple décrit l''ajout capotage d''événement GridView ligne de clic petit exemple en utilisant JS ou jQuery simulent un clic de souris un événement tag code de clics de souris du moniteur et l''événement clic clavier et sauter automatiquement la page

événements de souris screenY, pageY, clientY, layerY, propriété offsetY détaillée

Recommend Article: