recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - La hauteur de déplacement de .offset().top est-elle par rapport au corps ou à .leftmenu_main li? ? ?

$(".leftmenu_main li").hover(function () {
    $(this).addClass('hover');
    var menuTop = $(this).offset().top;
    
    var itemsList = $(this).children(".sec_cd");
    var itemsCount = itemsList.find('.sec_icon').length;

    itemsList.css("top", subMenuTop).fadeIn("fast");
}, function () {
    $(".sec_cd").hide();
    $(this).removeClass('hover');
});

ringa_leeringa_lee2840 Il y a quelques jours584

répondre à tous(4)je répondrai

  • phpcn_u1582

    phpcn_u15822017-05-19 10:27:01

    Donnez-moi une châtaigne

    Donc, offset ne calcule pas la hauteur du parent, mais les marges supérieure et gauche du corps.

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-19 10:27:01

    html

        <p class="a">
            <p class="b"></p>
        </p>

    css

            .a{
                position: relative;
                width: 200px;
                height: 200px;
                background-color: #f33;
                top: 200px;
            }
            .b{
                position: absolute;
                width: 100px;
                height: 100px;
                background-color: #1abc9c;
                top: 120px;
            }

    js

    console.log($('.b').offset().top);

    offset().top est le résultat final de 层层向上par rapport au corps
    Notez qu'il est ascendant couche par couche, peu importe le nombre de parents positionnés au milieu ou le nombre de décalages supérieurs au milieu. , ils seront superposés.

    Cela peut également être réalisé avec du JS natif :

    export function getTop(obj) {
      var iTop = 0;
      while (obj != window.document.body && obj != null) {
        iTop += obj.offsetTop; //循环取每一层父元素的相对偏移量
        obj = obj.offsetParent; //设置当前元素的父元素=当前元素,用以获取再上层的offsetTop
      }
      return iTop;
    }
    

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-05-19 10:27:01

    Cela dépend si vous avez écrit le parent positionnement. S'il n'y a pas de parent positionnement, c'est le corps

    .

    répondre
    0
  • 黄舟

    黄舟2017-05-19 10:27:01

    为什么不查 API。

    Obtenez les coordonnées actuelles du premier élément de l'ensemble des éléments correspondants, par rapport au document.

    répondre
    0
  • Annulerrépondre