淺談jQuery的offset()方法及示例分享
offset()方法的定義和用法:
此方法返回或設(shè)置所匹配元素相對于document對象的偏移量。
語法結(jié)構(gòu)一:
$(selector).offset()
獲取匹配元素在當(dāng)前document的相對偏移。
返回的對象包含兩個整型屬:top和left。
此方法只對可見元素有效。
實例代碼:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <style type="text/css"> *{ margin:0px; padding:0px; } .father{ border:1px solid black; width:400px; height:300px; padding:10px; margin:50px; } .children{ height:150px; width:200px; margin-left:50px; background-color:green; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ a=$(".children").offset(); alert("元素的偏移量坐標(biāo)是:"+a.top+"|"+a.left+""); }) }) </script> </head> <body> <div class="father"> <div class="children"></div> </div> <button>獲取元素的坐標(biāo)</button> </body> </html>
以上代碼可以彈出子div相對于document的偏移量。
語法結(jié)構(gòu)二:
$(selector).offset(value)
設(shè)置匹配元素相對于document對象的坐標(biāo)。
offset()方法可以讓我們重新設(shè)置元素的位置。這個元素的位置是相對于document對象的。
如果對象原先的position樣式屬性是static的話,會被改成relative來實現(xiàn)重定位。
參數(shù)列表:
參數(shù) 描述
value 規(guī)定以像素計的 top 和 left 坐標(biāo)。
可能的值:
1.值對,比如 {top:200,left:10}。
2.帶有top和left 屬性的對象。
實例代碼:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <style type="text/css"> .father{ border:1px solid black; width:400px; height:300px; } .children{ height:150px; width:200px; background-color:green; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $(".children").offset({top:100,left:100}) }) }) </script> </head> <body> <div class="father"> <div class="children"></div> </div> <button>點擊設(shè)置偏移量</button> </body> </html>
以上代碼可以設(shè)置div相對于document的偏移量。
語法結(jié)構(gòu)三:
使用函數(shù)的返回值來設(shè)置偏移坐標(biāo):
$(selector).offset(function(index,oldoffset))
參數(shù)列表:
參數(shù) 描述
function(index,oldvalue) 規(guī)定返回被選元素新偏移坐標(biāo)的函數(shù):
index - 可選。元素的索引。
oldvalue - 可選。當(dāng)前坐標(biāo)。
實例代碼:
<!DOCTYPE html> <html> <head> <meta charset=" utf-8"> <style type="text/css"> .father{ border:1px solid black; width:400px; height:300px; } .children{ height:150px; width:200px; background-color:green; } </style> <script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script> <script type="text/javascript"> $(document).ready(function(){ $("button").click(function(){ $(".children").offset(function(a,b){ var newpoint= new Object(); newpoint.top=b.top+50; newpoint.left=b.left+50; return newpoint; }) }) }) </script> </head> <body> <div class="father"> <div class="children"></div> </div> <button>點擊設(shè)置偏移量</button> </body> </html>
以上代碼同樣可以設(shè)置元素的偏移,不過值是通過函數(shù)返回。
以上所述就是本文的全部內(nèi)容了,希望大家能夠喜歡。
相關(guān)文章
淺談DOCTYPE對$(window).height()取值的影響
下面小編就為大家?guī)硪黄獪\談DOCTYPE對$(window).height()取值的影響。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2016-07-07jQuery EasyUI API 中文文檔 - ProgressBar 進度條
jQuery EasyUI API 中文文檔 - ProgressBar 進度條,使用jQuery EasyUI的朋友可以參考下。2011-09-09談?wù)凧query ajax中success和complete有哪些不同點
jquery ajax中success和complete有哪些不同點呢?大家都了解嗎,接下來通過本篇文章給大家介紹jquery ajax中success和complete的不同點,感興趣的朋友一起學(xué)習(xí)吧2015-11-11jQuery插件zTree實現(xiàn)獲取當(dāng)前選中節(jié)點在同級節(jié)點中序號的方法
這篇文章主要介紹了jQuery插件zTree實現(xiàn)獲取當(dāng)前選中節(jié)點在同級節(jié)點中序號的方法,結(jié)合實例形式分析了屬性插件zTree針對節(jié)點序號的相關(guān)操作技巧,需要的朋友可以參考下2017-03-03