jquery如何获取和设置元素位置

2025-10-26 00:44:35

jquery如何获取和设置元素位置。

工具/原料

FrontPage

电脑

方法/步骤

获取和设置当前元素位置

1、offset()  返回值:Object{top,left}

概述:获取匹配元素在当前视口的相对偏移。返回的对象包含两个整型属性:top 和 left。此方法只对可见元素有效。

示例:

描述:获取第二段的偏移。

HTML代码:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">2nd Paragraph

</body>

jQuery代码:

var p = $("p:last"); 

var offset = p.offset(); 

p.html( "left: " + offset.left + ", top: " + offset.top );

结果:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">left: 0, top: 21

</body>

2、offset(coordinates),返回值:jQuery

概述:

设置匹配元素相对于document对象的坐标。.offset()方法可以让我们重新设置元素的位置。这个元素的位置是相对于document对象的。如果对象原先的position样式属性是static的话,会被改成relative来实现重定位。

参数:

coordinates,Object{top,left}类型或 function(index, coords)类型。一个对象,必须包含top和left属性,作为元素的新坐标。这个参数也可以是一个返回一对坐标的函数,函数的第一个参数是元素的索引,第二个参数是当前的坐标。

示例:墨拒宿

描述:获取第二段的偏移。

HTML代码:Hello2nd Paragraph

jQuery代码:$("p:last").offset({ top: 10, left: 30 });

获取当前元素相对父元素的位置

position(),返回值:Object{top,left}

概述:

获取匹配元素相对父元素的偏移。返回的对象包含两个整型属性:top 和 left。为精确计算结果,请在补白、边框和填充属性上使用像素单位。此方法只对可见元素有效。

示例:

描述:获取第一段的偏移。

HTML代码:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">2nd Paragraph

</body>

jQuery代码:

var p = $("p:first"); 

var position = p.position(); 

$("p:last").html( "left: " + position.left + ", top: " + position.top );

结果:购脾

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">left: 0, top: 0

</body>

获取和设置当前元素相对滚动条顶部的位置

1、scrollTop(),返回值:Integer

概述:获取匹配元素相对滚动条顶部的偏移。此方法对可见和隐藏光娃元素均有效。

示例:

描述:获取第一段相对滚动条顶部的偏移

HTML代码:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">2nd Paragraph

</body>

jQuery代码:

var p = $("p:first"); 

$("p:last").text( "scrollTop:" + p.scrollTop() );

结果:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">scrollTop: 0

</body>

2、scrollTop(val),返回值:jQuery

概述:传递参数值时,设置垂直滚动条顶部偏移为该值。此方法对可见和隐藏元素均有效。

参数:val,String类型或Number类型,设定垂直滚动条值。

示例:

描述:设置相对滚动条顶部的偏移。

jQuery代码:$("div.demo").scrollTop(300);

获取和设置当前元素相对滚动条左侧的位置

1、scrollLeft(),返回值:Integer

概述:获取匹配元素相对滚动条左侧的偏移。此方法对可见和隐藏元素均有效。

示例:

描述:获取第一段相对滚动条左侧的偏移。

HTML代码:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">2nd Paragraph

</body>

jQuery代码:

var p = $("p:first"); 

$("p:last").text( "scrollLeft:" + p.scrollLeft() );

结果:

<body topmargin="0px" leftmargin="0px">

    <p style="margin:0 0;">Hello

    <p style="margin:0 0;">scrollLeft: 0

</body>

2、scrollLeft(val),返回值:jQuery

概述:传递参数值时,设置水平滚动条左侧偏移为该值。此方法对可见和隐藏元素均有效。

参数:val,String类型或Number类型,设定水平滚动条值。

示例

描述:设置相对滚动条左侧的偏移。

jQuery代码:$("div.demo").scrollLeft(300);

注意事项

将元素的margin值赋值为0px,不然获取的结果会加上margin值。

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢