`

jQuery获取元素位置以及高度与宽度

阅读更多

form:http://apps.hi.baidu.com/share/detail/40266053

 

对于大部分应用来说,只需要获取元素的位置以及高度与宽度,就可以根椐当前元素的位置来调整打开新窗口的位置,动态调整打开新窗口效果,这对于打开新窗口来说更加实用。jQuery提供了一个获取位置方法offset()和二个分别获取高度与宽度方法height()和width(),结合上期实例,我们增加如下几行代码,了解jQuery获取元素位置以及高度与宽度方法,供参考。


javascript部分

$(document).ready(function(){ 
$(”#oButton”).click(function(){ 
openwin.getWin(); 
}); 
}); 
var openwin = {}; 
openwin.getWin = function(){ 
var obj = $(”#open”); 
//是否已经新开窗口 
if(obj.html() != ” ){ 
openWindow = $(”#newWindow”);//存在窗口 
openWindow.slideToggle(”slow”);//显示效果 
}else{ 
//模拟弹出窗口样式 
var openWindow = $(openwin.getHtml());//不存在窗口 
//定义CSS样式 模拟关键 自定义设置CSS样式 
var obj = $(”#oButton”); 
var offset = obj.offset(); 
var right = offset.left+obj.width(); 
var down = offset.top+obj.height(); 
openWindow.css({ 
‘font-size’:'12px’, 
‘position’:'absolute’, 
‘margin’:'20px’, 
‘left’:right, 
‘top’:down, 
‘width’:'300px’, 
‘background-color’:'#f0f5FF’, 
‘border’: ‘1px solid #000′, 
‘z-index’: ‘50′, 
‘padding’:'10px’}); 
openWindow.appendTo($(”#open”)); 

//绑定单击事件 确定 
openWindow.find(”#show”).click(function(){ 
openwin.showWindow(); 
}).end(); 
//绑定单击事件 关闭 
openWindow.find(”#closed”).click(function(){ 
openwin.closeWindow(); 
}).end(); 

//获取窗口页面元素 模拟窗口 
openwin.getHtml = function(){ 
//自定义页面元素,样式,大小等 
html = ‘<div id=”newWindow”>’; 
html += ‘<p>jQuery弹出窗口</p>’; 
html += ‘<p>网站:<input type=”text” name=”" value=”" /></p>’; 
html += ‘<p><button id=”show”>确定</button> <button id=”closed”>关闭</button></p>’; 
html += ‘</div>’; 
return html; 

//确认事件 
openwin.showWindow = function(){ 
$(”#newWindow”).hide(); 

//关闭事件 
openwin.closeWindow = function(){ 
$(”#newWindow”).hide(); 

代码详解
1,获取对象(自定义调整打开新窗口参照元素)
var obj = $(”#oButton”);
实例中我获取的对象是弹出窗口按钮,这样创建的新窗口就会根椐按钮的位置进行调整,实例中将创建的新窗口显示的按钮的右下角。

2,获取对象元素的位置(offset()方法)
var offset = obj.offset();
获取对象元素的位置,分别是元素的top和left,调用方法是:offset.left和offset.top,可知当前对象的左部和顶部位置。

3,获取对象元素的宽度(width()方法)
var right = offset.left+obj.width();
实例中是获取对象的右下角位置,创建新窗口的左部位置。

4,获取对象元素的高度(height()方法)
var down = offset.top+obj.height();
实例中是获取对象的右下角位置,创建新窗口的顶部位置。

5,定义CSS样式,分别设置左部和顶部。
‘left’:right,
‘top’:down,
要注意CSS样式中margin和padding的值,以及浏览器IE与firefox兼容等效果。

结合上面实例,jQuery获取元素位置以及高度与宽度非常简单,通过内置方法offset(),width()和height()实现我们的动态调整打开新窗口功能,对于其它扩展应用来说也一样,了解jQuery获取元素位置以及高度与宽度方法,对于创建新元素,调整元素位置与大小,将非常实用。

 

设置元素值

$("#show_detail").css({

 "top": (thisOffset.top+10) + "px",

 "left": (thisOffset.left) + "px"});

分享到:
评论

相关推荐

    jquery实现动态改变div宽度和高度

    主要介绍了jquery实现动态改变div宽度和高度,效果非常不错,而且兼容性也很好,有需要的小伙伴可以参考下。

    jQuery获取页面及个元素高度、宽度的总结——超实用

    下面把jQuery获取页面及个元素高度、宽度的方法汇总,分享给大家。 获取浏览器显示区域(可视区域)的高度 :  代码如下: $(window).height(); 获取浏览器显示区域(可视区域)的宽度 : 代码如下: $(window)....

    JQuery获取元素文档大小、偏移和位置和滚动条位置的方法集合

    因为浏览器的兼容问题,如果使用javascript获取这些数值是一个相当痛苦的过程。好在JQuery提供了简单优雅,并且兼容的解决... 获取滚动条的位置 代码如下: //获取滚动条到顶部的垂直高度 $(document).scrollTop(); //获

    Web前端开发技术-Jquery的尺寸和位置操作.pptx

    offset()方法:使用offset()方法可以获取元素的位置,返回的是一个对象,包含left和top属性,表示相对于文档的偏移坐标,和父级元素没有关系。;案例演示:;案例实现:;案例实现:获取元素的位置;position()方法:...

    jQuery 3.3.1.zip

    jQuery是一款免费且开放源...尺寸确保我们在显示“inline”的元素上获取适当的宽度和高度值。事件确保触发器数据传递给无线电点击事件处理程序;恢复:触发器复选框和广播单击事件相同;恢复:添加无线电点击触发测试。

    jquery获取文档高度和窗口高度汇总

    本文主要给大家汇总介绍了了jQuery获取页面及个元素高度、宽度的方法,非常的实用,有需要的小伙伴可以参考下。下面的例子是基于jquery的参数与方法来快速获取文档或浏览器可视区域的高度与宽度的代码,希望本例子能...

    js/jquery获取浏览器窗口可视区域高度和宽度以及滚动条高度实现代码

    在js使用过程中可能会根据要求获取浏览器窗口的可视区域高度和宽度,滚动条高度,于是本人搜集整理下,拿出来和大家分享,希望可以帮助你们

    超实用的jQuery代码段

    超实用的jQuery代码段精选近350个jQuery代码段,涵盖页面开发中绝大多数要点、技巧与方法,堪称史上最实用的jQuery代码参考书,可以视为网页设计与网站建设人员的好帮手。《超实用的jQuery代码段》的代码跨平台、跨...

    jQuery核心语法

    通过jquery的$()引用元素包括通过id、class、元素名以及元素的层级关系及dom或者xpath条件等方法,且返回的对象为jquery对象(集合对象),不能直接调用dom定义的方法。 2、jQuery对象与dom对象的转换 只有jquery...

    jquery.get_viewportSize:获取html元素的宽度和高度。 对于触摸设备,这是“视口”

    jquery.get_viewportSize获取视口的宽度和高度。 主页: : 版权所有2015 nexxar / Thomas Fellinger 许可证GPLv2 返回包含数字(像素)的宽度和高度的对象

    jQuery height()、innerHeight()、outerHeight()函数的区别详解

    在jQuery中,获取元素高度的函数有3个,它们分别是height()、 innerHeight()、 outerHeight()。 与此相对应的是,获取元素宽度的函数也有3个,它们分别是width()、 innerWidth()、 outerWidth()。 在这里,我们以...

    Js与Jq 获取页面元素值的方法和差异对比

    JS与Jquery 都能获取页面元素的宽度,高度和相对位移等数值,那他们之间能相互转换或替代吗,写法又有哪些差异呢?本文将详细为你介绍。 1.Js获取浏览器高度和宽度 document.documentElement.clientWidth ==&gt; ...

    Query常用DIV操作获取和设置长度宽度的实现方法

    方法一:height和width函数(得到的是证书),可以用于获取或设置元素的高度和宽度。 val()获取或设置元素的值 方法二:css函数可以用于获取或设置元素的高度和宽度 获取css(“width”)(得到的是以px结尾的字符串)...

    无法获取隐藏元素宽度和高度的解决方案

    在实际开发中会遇到确实需要获取隐藏元素的宽高,这儿所说的隐藏元素是display为none的元素。 可使用jQuery Actual Plugin插件来完成,其源码如下: ;( function ( $ ){ $.fn.addBack = $.fn.addBack || $.fn.and...

    Js与Jq获取浏览器和对象值的方法

    JS and Jquery 都能获取页面元素的宽度,高度和相对位移等数值,那他们之间能相互转换或替代吗,写法又有哪些差异呢?本文将详细为你介绍。 1.Js获取浏览器高度和宽度 document.documentElement.clientWidth ==&gt; ...

    jQuery学习笔记 操作jQuery对象 CSS处理

    CSS基本属性处理 方法 描述 css(name) ...获取元素上CSS规则中name属性值 ...设置元素上CSS规则name属性的值为value,也可使用函数参数,不解释;...这两个方法获取的是元素在页面中的实际高度宽度值,多用于数学

    浅谈jQuery中height与width

    jquery中有三个获取element高度的方法,分别是:height(),innerHeight(),outerHeght(bool);同样对应的有三个获取element宽度的方法:width(),innerHeight(),outerHeight(bool),这三个方法分别对应怎样的元素属性,如下...

    autoheight:使所有选定元素的高度相同,取决​​于最大或最小高度

    根据最大或最小高度,使所有选定元素的高度相同。 获取最大或最小高度 启用调整大小 在特定的窗口宽度上禁用 如何使用 ? 首先包含jQuery库 &lt; script src= " ...

    jQuery EasyUI 1.4 离线简体中文API文档 含完整开发工具包+皮肤+扩展+演示

    (题外话:从本次开始 我新增了jQuery EasyUI的专题...filebox:filebox 该组件表单元素中用于上传文件的文件框工具组件 "&gt;(题外话:从本次开始 我新增了jQuery EasyUI的专题页面 大家可以关注我的专题页来及时获取

Global site tag (gtag.js) - Google Analytics