前端笔记

浏览器宽高

2018-05-16  本文已影响0人  好奇男孩

window.innerHeight属性与outerHeight属性

通过window.innerHeight和window.outerHeight可以得到整个窗口的高度。其中:

window.innerHeight
720
window.outerHeight
860

把Height改为Width同样有效,分别是innerWidth和outerWidth。

scrollX、scrollY

scrollX
28
scrollY
7

这两个值随着滚动位置变化而变化

scrollTo、scrollBy、scroll

我们也可以通过方法scrollTo或者scroll方法改变滚动条位置到指定坐标

window.scrollTo(0, 300); // 滚动条纵向偏移移动到300px处

两个参数分别是水平、垂直方向偏移
scrollBy可以相对当前位置移动滚动条,而不是移动到绝对位置

scrollBy(0, 100); // 滚动条下移100px

页面宽高

element.clientHeight

1.jpg

element.offsetHeight

2.jpg

element.scrollHeight

元素滚动内容的总长度。如果元素没出现滚动条, scrollHeight等于 clientHeight

element.scrollTop

滚动的高度

window.innerHeight

窗口的高度

element.getBoundingClientRect() 获取元素在视窗中的位置

问题: 如果判断一个元素距离 document 顶部的偏移

function getOffsetTop( elem ){
  var offsetLeft = 0
  do {
     offsetTop += elem.offsetTop
  } while( elem = elem.offsetParent )
  return offsetTop
}
element.getBoundingClientRect().top  + document.body.scrollTop

范例:获取图片真实的宽高

onload加载所有的相关数据后,取宽高

// 图片地址
var img_url = ‘13643608813441.jpg'

// 创建对象
var img = new Image()

// 改变图片的src
img.src = img_url

// 加载完成执行
img.onload = function(){
    // 打印
    alert('width:'+img.width+',height:'+img.height)
}

如何获取元素的真实宽高

上一篇 下一篇

猜你喜欢

热点阅读