js 和 jquery 獲取頁面和滾動條的高度 視口高度文檔高度


  • js 和 jquery 獲取頁面和滾動條的高度  
  •    
  • //頁面位置及窗口大小  
  • function GetPageSize() {  
  • var scrW, scrH;   
  • if(window.innerHeight   
  • && window.scrollMaxY)   
  • {    // Mozilla      
  • scrW =   
  • window.innerWidth + window.scrollMaxX;      
  • scrH = window.innerHeight +   
  • window.scrollMaxY;   
  • }   
  • else if(document.body.scrollHeight >   
  • document.body.offsetHeight)  
  • {    // all but IE Mac      
  • scrW =   
  • document.body.scrollWidth;      
  • scrH = document.body.scrollHeight;   
  • else   
  • if(document.body)   
  • // IE Mac      
  • scrW = document.body.offsetWidth;      
  •   
  • scrH = document.body.offsetHeight;  
  • }   
  • var winW, winH;   
  •   
  • if(window.innerHeight)   
  • // all except IE      
  • winW =   
  • window.innerWidth;   
  • winH = window.innerHeight;   
  • else if   
  • (document.documentElement &&   
  • document.documentElement.clientHeight)  
  • {    // IE 6 Strict Mode      
  • winW =   
  • document.documentElement.clientWidth;       
  • winH =   
  • document.documentElement.clientHeight;   
  • else if (document.body) { //   
  • other      
  • winW = document.body.clientWidth;      
  • winH =   
  • document.body.clientHeight;   
  • }    // for small pages with total size less   
  • then the viewport   
  • var pageW = (scrW<winW) ? winW : scrW;   
  • var pageH =   
  • (scrH<winH) ? winH : scrH;      
  • return {PageW:pageW, PageH:pageH,   
  • WinW:winW, WinH:winH};  
  •   
  • };  
  •   
  • //滾動條位置  
  • function GetPageScroll()   
  • {   
  • var x, y;   
  • if(window.pageYOffset)   
  • {    // all except IE      
  • y =   
  • window.pageYOffset;      
  • x = window.pageXOffset;   
  • else   
  • if(document.documentElement && document.documentElement.scrollTop)   
  •   
  • {    // IE 6 Strict      
  • y = document.documentElement.scrollTop;      
  • x   
  • = document.documentElement.scrollLeft;   
  • else if(document.body) {    // all   
  • other IE      
  • y = document.body.scrollTop;      
  • x =   
  • document.body.scrollLeft;     
  • }   
  • return {X:x,   
  • Y:y};  
  •   
  • }  
  •   
  •   
  • jquery  
  •   
  • 獲取瀏覽器顯示區域的高度 :   
  • $(window).height();   
  • 獲取瀏覽器顯示區域的寬度 :$(window).width();   
  • 獲取頁面的文檔高度   
  • :$(document).height();   
  • 獲取頁面的文檔寬度 :$(document).width();  
  •   
  • 獲取滾動條到頂部的垂直高度   
  • :$(document).scrollTop();   
  • 獲取滾動條到左邊的垂直寬度 :$(document).scrollLeft();   
  •   
  •   
  • 計算元素位置和偏移量   
  •   
  • offset方法是一個很有用的方法,它返回包裝集中第一個元素的偏移信息。默認情況下是相對body的偏移信息。結果包含 top和left兩個屬性。  
  •   
  • offset(options, results)   
  • options.relativeTo  指定相對計   
  • 算偏移位置的祖先元素。這個元素應該是relative或absolute定位。省略則相對body。   
  • options.scroll  是否把   
  • 滾動條計算在內,默認TRUE   
  • options.padding  是否把padding計算在內,默認false   
  • options.margin   
  •   是否把margin計算在內,默認true   
  • options.border  是否把邊框計算在內,默認true  
  •   
  • http://www.cnblogs.com/hoojo/archive/2012/02/16/2354663.html  
  •   
  • alert($(window).height()); //瀏覽器當前窗口可視區域高度   
  • alert($(document).height()); //瀏覽器當前窗口文檔的高度   
  • alert($(document.body).height());//瀏覽器當前窗口文檔body的高度   
  • alert($(document.body).outerHeight(true));//瀏覽器當前窗口文檔body的總高度 包括border padding margin   
  • alert($(window).width()); //瀏覽器當前窗口可視區域寬度   
  • alert($(document).width());//瀏覽器當前窗口文檔對象寬度   
  • alert($(document.body).width());//瀏覽器當前窗口文檔body的高度   
  • alert($(document.body).outerWidth(true));//瀏覽器當前窗口文檔body的總寬度 包括border padding margin   
  •    
  • // 獲取頁面的高度、寬度  
  • function getPageSize() {  
  •     var xScroll, yScroll;  
  •     if (window.innerHeight && window.scrollMaxY) {  
  •         xScroll = window.innerWidth + window.scrollMaxX;  
  •         yScroll = window.innerHeight + window.scrollMaxY;  
  •     } else {  
  •         if (document.body.scrollHeight > document.body.offsetHeight) { // all but Explorer Mac      
  •             xScroll = document.body.scrollWidth;  
  •             yScroll = document.body.scrollHeight;  
  •         } else { // Explorer Mac...would also work in Explorer 6 Strict, Mozilla and Safari      
  •             xScroll = document.body.offsetWidth;  
  •             yScroll = document.body.offsetHeight;  
  •         }  
  •     }  
  •     var windowWidth, windowHeight;  
  •     if (self.innerHeight) { // all except Explorer      
  •         if (document.documentElement.clientWidth) {  
  •             windowWidth = document.documentElement.clientWidth;  
  •         } else {  
  •             windowWidth = self.innerWidth;  
  •         }  
  •         windowHeight = self.innerHeight;  
  •     } else {  
  •         if (document.documentElement && document.documentElement.clientHeight) { // Explorer 6 Strict Mode      
  •             windowWidth = document.documentElement.clientWidth;  
  •             windowHeight = document.documentElement.clientHeight;  
  •         } else {  
  •             if (document.body) { // other Explorers      
  •                 windowWidth = document.body.clientWidth;  
  •                 windowHeight = document.body.clientHeight;  
  •             }  
  •         }  
  •     }         
  •     // for small pages with total height less then height of the viewport      
  •     if (yScroll < windowHeight) {  
  •         pageHeight = windowHeight;  
  •     } else {  
  •         pageHeight = yScroll;  
  •     }      
  •     // for small pages with total width less then width of the viewport      
  •     if (xScroll < windowWidth) {  
  •         pageWidth = xScroll;  
  •     } else {  
  •         pageWidth = windowWidth;  
  •     }  
  •     arrayPageSize = new Array(pageWidth, pageHeight, windowWidth, windowHeight);  
  •     return arrayPageSize;  
  • }  
  •    
  • // 滾動條  
  • document.body.scrollTop;  
  • $(document).scrollTop();  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM