jQuery之offset,position

获取/设置标签的位置数据
* offset(): 相对页面左上角的坐标
* position(): 相对于父元素左上角的坐标.

需求:
1. 点击 btn1
打印 div1 相对于页面左上角的位置
打印 div2 相对于页面左上角的位置
打印 div1 相对于父元素左上角的位置
打印 div2 相对于父元素左上角的位置
2. 点击 btn2
设置 div2 相对于页面的左上角的位置

代码实现:

//1. 点击 btn1
$("#btn1").click(function(){
    //  打印 div1 相对于页面左上角的位置 10 20
    var offet = $(".div1").offset();
    console.log("left:"+offet.left+",top:"+offet.top);
    //  打印 div2 相对于页面左上角的位置 10 70
    var offet2 = $(".div2").offset();
    console.log("left:"+offet2.left+",top:"+offet2.top);

    //  打印 div1 相对于父元素左上角的位置 10 20
    var position = $(".div1").position();
    console.log("left:"+position.left+",top:"+position.top);
    //  打印 div2 相对于父元素左上角的位置 0 50
    var position = $(".div2").position();
    console.log("left:"+position.left+",top:"+position.top);

});
///2. 点击 btn2
$("#btn2").click(function(){
    //设置 div2 相对于页面的左上角的位置
    $(".div2").offset({
        left:50,
        top:70
    })
})

原文地址:https://www.cnblogs.com/caicaihong/p/9379154.html

时间: 2024-10-12 09:09:38

jQuery之offset,position的相关文章

js中的offsetParent,offsetLeft,offsetTop及jquery的offset(),position()比较

1.offsetParent 元素的offsetParent并不是元素的父元素,判断元素的offsetParent要根据以下情况: 1)当DOM结构层次中的元素均没有进行css定位(设置position为absolute或relative),则offsetParent为根目录: 2)当元素的父元素没有进行css定位,则offsetParent取最近的已经定位的元素: 3)当元素的父元素进行了css定位,则offsetParent为父元素: 2.offsetLeft,offsetTop 在IE中:

jQuery的offset()和position()用法详解

offset()和position()用法详解: 这两个方法非常的常用,同时掌握起来有些困难,下面就介绍一下这两个方法的用法. 下面先看一下它们基本的定义: 1.offset()方法的定义: 此方法获取或者设置匹配元素在当前document的相对偏移. 此方法只对可见元素有效. 当获取偏移量时,方法的返回值是一个包含两个整型属性(top和left)的对象. 设置偏移量时,此方法的参数是带有top和left属性的对象. 具体用法可以参阅jQuery的offset()方法一章节. 2.positio

js实现jquery的offset()

用过jQuery的offset()的同学都知道 offset().top或offset().left很方便地取得元素相对于整个页面的偏移. 而在js里,没有这样直接的方法,节点的属性offsetTop可以获得该节点相对于父节点的相对偏移 但不能直接获得其绝对偏移,我们可用节点逐层递归向上来相加offsetTop来获得绝对偏移. function getOffset(Node, offset) { if (!offset) { offset = {}; offset.top = 0; offset

Jquery中用offset().top和offsetTop的比较

今天,想测试一个div与顶部的距离,用的是.offsetTop,但是offsetTop获得的值,怎么都打印不出来.折腾了半天,打印的结果都是undefined,虽然网上很多资料都说返回的是数值.虽然这个函数永不了,但是黄显钦找到了一个可以替代offsetTop的函数.那就是jquery的offset().top 我们先来了解一下,什么是offset().top和offsetTop? offsetTop 解析一: 假设 obj 为某个 HTML 控件. obj.offsetTop 指 obj 相对

jquery的offset与position的区别

这里offset取得是屏幕影藏的y轴的距离?元素距离屏幕的y轴的距离. 而postion取得的则是,上一个父元素(包含postion定位的)的距离

jQuery的offset()方法

offset()方法的定义和用法: 此方法返回或设置所匹配元素相对于document对象的偏移量. 语法结构一: $(selector).offset() 获取匹配元素在当前document的相对偏移.返回的对象包含两个整型属:top和left.此方法只对可见元素有效.实例代码: <!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <meta name="author

关于通过jquery来理解position的relative及absolute

一个多月前刚刚开始系统接触Javascript/css/html的时候一直对position属性的relative及absolute不是很了解.今天在接触jquery中无意间发现通过slideToggle() 的滑动效果可以更加方便清楚的了解position属性的含义.下面是代码. <!DOCTYPE html><html><head><script src="http://libs.baidu.com/jquery/1.10.2/jquery.min.

深度理解Jquery 中 offset() 方法

多说无益,现在就开始! 一.语法 1. 返回偏移坐标 $(selector).offset(); top: $(selector).offset().top; left: $(selector).offset().left; 2.设置偏移坐标: $(selector).offset({top:value,left:value}); 参数的含义:{top:value,left:value}     当设置偏移时是必需的.规定以像素为单位的 top 和 left 坐标. 可能的值:(1).名/值对,

有关位置问题:原生JS e.clientX e.pageX JQ中offset() position()

原文地址:http://blog.csdn.net/lidiansheng/article/details/8651512 注:因为我们要在 MSIE 和其他浏览器下运行,Firefox 和其他浏览器用 event.pageX 和 event.pageY 来表示鼠标相对于文档的位置,如果你有一个 500*500 的窗口并且你的鼠标在绝对中间,那么 pageX 和 pageY  的值都是 250,如果你向下滚动  500, 那么 pageY 将变成 750. MSIE 正好相反,它使用 event