1. 程式人生 > >JS元素位置和位置座標

JS元素位置和位置座標

常見的屬性:

網頁可見區域寬: document.body.clientWidth;
網頁可見區域高: document.body.clientHeight;
網頁可見區域寬: document.body.offsetWidth   (包含邊線的寬);

網頁可見區域高: document.body.offsetHeight (包含邊線的高);

網頁正文全文寬: document.body.scrollWidth;(含滾動條時,即滾動條從最頂端滾到最底端實際走過的距離)
網頁正文全文高: document.body.scrollHeight;(含滾動條時,即滾動條從最頂端滾到最底端實際走過的距離)

網頁被捲去的高: document.body.scrollTop;
網頁被捲去的左: document.body.scrollLeft;
網頁正文專案組上: window.screenTop;(返回視窗相對於螢幕的y座標)
網頁正文專案組左: window.screenLeft;(返回視窗相對於螢幕的x座標)
螢幕辨別率的高: window.screen.height;(返回當前螢幕高度,即解析度值)
螢幕辨別率的寬: window.screen.width;(返回當前螢幕寬度,即解析度值)
螢幕可用工作區高度: window.screen.availHeight;(空白空間)

螢幕可用工作區的寬度:window.screen.availWidth;(空白空間)

(1)offsetLeft

假設 obj 為某個 HTML 控制元件。

obj.offsetTop 指 obj 間隔上方或上層控制元件的地位,整型,單位畫素。

obj.offsetLeft 指 obj 間隔左方或上層控制元件的地位,整型,單位畫素。

注意的是;

{I}、offsetTop 返回的是數字,而 style.top 返回的是字串,除了數字外還帶有單位:px。

{II}、offsetTop 只讀,而 style.top 可讀寫

{III}、若是沒有給 HTML 元素指定過 top 樣式,則 style.top 返回的是空字串

(2)clientWidth/clientHeight,offsetWidth/offsetHeight,scrollWidth/scrollHeight

IE、Opera 認為 offsetHeight = clientHeight + 遷移轉變條 + 邊框。

NS、FF 認為 offsetHeight 是網頁內容實際高度,可以小於 clientHeight。

IE、Opera 認為 scrollHeight 是網頁內容實際高度,可以小於 clientHeight。

NS、FF 認為 scrollHeight 是網頁內容高度,不過最小值是 clientHeight。

clientHeight 就是透過瀏覽器看內容的這個區域高度。

即:NS、 FF 認為 offsetWidth/offsetHeight 和 scrollWidth/scrollHeight 都是網頁內容高度,只不過當網頁內容高度小於便是 clientWidth/clientHeight 時,scrollWidth/scrollHeight 的值是 clientWidth/clientHeight,而 offsetWidth/offsetHeight 可以小於clientWidth/ clientHeight。IE、Opera 認為 offsetWidth/offsetHeight 是可視區域 clientWidth/clientHeight 遷移轉變條加邊框。scrollWidth/scrollHeight 則是網頁內容實際高度。

(3)scrollTop/scrollLeft.scrollWidth/scrollHeight

IE 和 FireFox 周全支撐,而 Netscape 和 Opera 不支撐 scrollTop、scrollLeft(document.body 除外)。

scrollWidth/scrollHeight 是內部元素的絕對寬度/高度,包含內部元素的隱蔽的專案組。

(4)offsetWidth/offsetHeight

與style.width屬性的差別在於:如物件的寬度設定值為百分比寬度,則無論頁面變大還是變小,style.width都返回此百分比,而offsetWidth則返回在不合頁面中物件的寬度值而不是百分比值

與style.height屬性的差別在於:如物件的寬度設定值為百分比高度,則無論頁面變大還是變小,style.height都返回此百分比,而offsetHeight則返回在不合頁面中物件的高度值而不是百分比值

(5)offsetParent

offsetParent是個只讀屬性,返回最近顯示指定位置的容器元素的引用。如果元素沒有指定位置,最近的元素或者根元素(標準模式下是html,怪異模式下是body)就是offsetParent。當元素的style.display='none'時,offsetParent返回null。由於offsetTop和offsetLeft是相對於頁邊距,因此offsetParent是非常有用的。 瀏覽器相容性  在以WebKit為核心的瀏覽器上,如果元素是隱藏的(該元素或者上級元素style.display='none')或者元素自身style.position='fixed',那麼就會返回null。     在IE(9)上如元素style.position='fixed',該屬性就會返回null。(然而display:none不影響這個瀏覽器) 擴充套件: 1、style.left,style.top,style.right,style.bottom的使用注意: {I}
position的屬性中有static、fixed、relative、absolute四個屬性。常用relative和absolute。 (1)若指定為static時,DIV遵循HTML規則; (2)若指定為relative時,可以用top、left、right、bottom來設定DIV在頁面中的偏移,但是此時不可使用層; (3)若指定為absolute時,可以用top、left、right、bottom對DIV進行絕對定位; (4)若指定為fixed時,在IE7與FF中DIV的位置相對於螢幕固定不變,IE6中沒有效果(期待高手指點原因); 
left:設定物件相對於文件層次中最近一個定位物件的左邊界的位置。 
top:設定物件相對於文件層次中最近一個定位物件的上邊界的位置。 
right:設定物件相對於文件層次中最近一個定位物件的右邊界的位置。 
bottom:設定物件相對於文件層次中最近一個定位物件的下邊界的位置。  {II}  ie6-ie8可使用可以直接用obj.style.top=100; 但在FireFox和ie9中必須加上單位,變成obj.style.top=100+'px'; style.left同理。
2、clientWidth = content + padding       clientHeight = content+ padding  (即:元素的clientWidth,clientHeight是指這個元素的包含補白在內的寬,高)
    clientWidth與clientHeight都是隻讀屬性,
3、scrollHeight和scrollWidth屬性,指包含滾動條在內的該元素的視覺面積。表示滾動條滾動的高度和寬度。
   滾動條滾動的垂直距離,是document物件的scrollTop屬性;滾動條滾動的水平距離是document物件的scrollLeft屬性。
4、offsetTop和offsetLeft屬性,表示該元素的左上角與父容器(offsetParent物件)左上角的距離。(注意:不適用於表格和iframe內的元素)
5、getBoundingClientRect()方法。它返回一個矩形物件,其中包含了left、right、top、bottom四個屬性,分別對應了該元素的左上角和右下角相對於瀏覽器視窗(viewport)左上角的距離。【為了相容把body加上margin:0;padding:0,注意加DOCTYPE宣告(有了它IE還是挺聽話的)】



相關推薦

JS元素位置位置座標

常見的屬性: 網頁可見區域寬: document.body.clientWidth; 網頁可見區域高: document.body.clientHeight; 網頁可見區域寬: document.body.offsetWidth   (包含邊線的寬); 網頁可見

十八、DOM元素尺寸位置

包含 隱藏 有單位 absolut bottom var compute 重要 內邊距 十八、DOM元素尺寸和位置 1.獲取元素CSS大小 1.通過style內聯獲取元素的大小   var box = document.getElementById(‘box‘);

DOM中獲取元素尺寸位置常用的API

scrolltop border order bottom borde 尺寸 常用 瀏覽器 cli client系列 clientTop: 獲取元素border-top的寬度 clientLeft:獲取元素border-left的寬度 clientWidth: 獲取元素的寬

js 元素的各種位置尺寸寬高

元素.offsetLeft[Top]:只讀 屬性 當前元素到定位父級的距離(偏移值) 到當前元素的offsetParent的距離 如果沒有定位父級    offsetParent -> body    offsetLeft -> h

js三大系列滑鼠座標--筆記(五)

       offset系列(看父元素有沒有定位)        1.父元素:沒有脫離文件流            offsetTop 、offsetLeft:對齊瀏覽器,自身最邊緣(邊框)到客戶區最左/最上端的距離        2.父元素:脫離文件流      

原生 JS 獲取元素的尺寸位置

關於元素的尺寸和位置,這原本是 CSS 乾的事,但更多的時候需要用 JavaScript 來獲取這些引數,比如一個很好的例子 js 實現的圖片瀑布流。 在介紹 JS 中的例子之前,先來說明一下 css 中的元素尺寸。 CSS 中的 width 和 height

使用html元素的getBoundingClientRect來獲取dom元素的時時位置大小

html 可能 .get dom元素 logs query htm images cli 使用: var section = $(‘.section‘);這是jquery包裝的dom元素,其他前端框架返回的可能也是一個包裝元素, 我們需要獲得的是裏面的html的dom元素

html元素位置大小圖表

scrolltop wid idt htm blog oss ext set pre offsetWidth clientWidth scrollWidth offsetHeight clientHeight scrollHeight offsetLef

Js + echarts - Pie legend 位置調整值添加

fun dev cal ems ddl orm event func 需要 var drawPieChart=function(chartId,titleText){ var chartData=[ {value:335, nam

C++:將一個數組的前m個元素後n-m個元素整體互換位置

笨方法 >_<  #include <iostream> using namespace std; int main() { int n,m,i,j; int a[100]; cout<<"請輸入要建立陣列的長度(不能超過100)

使用者Ip地址百度地圖api介面獲取使用者地理位置(經緯度座標,城市)

<?php   //獲取使用者ip(外網ip 伺服器上可以獲取使用者外網Ip 本機ip地址只

js獲取當前位置的地理座標(經緯度)

由於專案需求,需要獲取手機的當前位置,,,,,問度娘,然後做了一個小demo if(navigator.geolocation) { navigator.geolocation.getCurrentPosition( function (position) {

js中獲取元素的當前位置

js中獲取當前位置有如下幾種方法: event.offsetX,   (IE屬性,測試都可以使用) event.offsetY,    (IE屬性,測試都可以使用) event.clientX,  event.clienY, event.scrennX, event.sc

JavaScript與CSS — 元素位置各種座標系

使用位置、尺寸和可見性基本就可以在現代瀏覽器中模擬絕大多數常見的使用者效果了。元素的位置是實現互動效果的基礎。在CSS中,元素使用偏移量來定位,它是通過元素到它父元素的左上角的偏移量來計算。CSS的座標系如下圖 頁面上的所有元素都有left(水平位置)和top(垂直位置)

JavaScript獲取DOM元素位置尺寸大小

在一些複雜的頁面中經常會用JavaScript處理一些DOM元素的動態效果,這種時候我們經常會用到一些元素位置和尺寸的計算,瀏覽器相容性問題也是不可忽略的一部分,要想寫出預想效果的JavaScript程式碼,我們需要了解一些基本知識。 基礎概念 為了方便理解,我們需要了解幾個基礎概念,每個HTML元素

從陣列中找出兩個元素等於指定數值,並輸出位置

從陣列中找出和為指定值的第一對元素 1、這博文主要是實現了從陣列中找到兩個元素之和與指定值相等的元素,並輸出這兩個元素的陣列下標。 2、若有多對元素之和等於指定元素,那麼只需找到第一對並輸出結果即可。 程式思想及分析 1、通過快速排序對陣列進行排序,

JS中的位置寬度:clientWidth、offsetWidth、scrollWidth等區別

   首先定義一個div。 然後稍微裝修一下 下面開始區分     一、clientWidth和clientHeigh 、 clientTop和clientLeft       &n

jQuery元素的尺寸、位置頁面滾動事件

bbc left ESS div roc box off solid 頁面 1.獲取和設置元素的尺寸 <!doctype html><html><head><meta charset="utf-8">&l

js中與元素寬高位置相關知識彙總

常見clientWidth、clientHeight、offsetWidth、offsetLeft,clientX、scrollTop等詞語,比較混亂,現在總結下他們的區別。 1. clientWidth:元素的寬度(width+padding),offsetWidth相比clientWidth,

java在list集合指定位置插入物件js在陣列指定位置插入物件的方法

java 向集合指定位置插入一條資料: List<String> list =new ArrayList<>(); list.add("a"); list.add("b");