Dom 对象宽度最小为 320



我想知道 dom 屏幕在任何时候的方向,在调整大小等时也是如此。我正在使用一个流/RxJS框架,它每次调整大小时都会给我一个事件流,它会返回一个对象。我尝试找到高度和宽度属性,并使用这些属性非常接近:

fromEvented('resize', myMap)
.forEach(x => console.log(x.target._canvas.clientHeight, x.target._canvas.clientWidth, x.target._canvas.clientHeight > x.target._canvas.clientWidth))

所以当真时,它是肖像,否则是兰景。

但不知何故,宽度至少为 320。因此,即使将大小调整为较小的实际宽度,我也会不断获得 320。我应该使用哪些属性?或者我也可以以某种方式使用 CSS 值(我是 kn00b...)?

你可以简单地使用 document.documentElement.clientWidth https://developer.mozilla.org/en-US/docs/Web/API/Element/clientWidth 以Jquery为例

$(window).resize(function(){ console.log(document.documentElement.clientWidth);})

我得到的x是一个Mapbox地图对象。我通过忽略它并简单地使用 html5 事件来解决它。由于我最常使用.js对于流,我使用了从 @most/dom-event 调整大小,然后是event.currentTarget.innerWidth;工作正常!

最新更新