获取大于视口宽度的元素

返回一个数组,其中包含宽度大于视口宽度的 HTML 元素。

  • 使用 HTMLElement.offsetWidth 获取 Document 的宽度。
  • 使用 Document.querySelectorAll() 的结果上使用 Array.prototype.filter() 来检查文档中所有元素的宽度。
const getElementsBiggerThanViewport = () => {
  const docWidth = document.documentElement.offsetWidth;
  return [...document.querySelectorAll('*')].filter(
    el => el.offsetWidth > docWidth
  );
};

getElementsBiggerThanViewport(); // <div id="ultra-wide-item" />