javascript - 使用 Javascript 在页面加载时缩放 div

标签 javascript jquery html css

我正在使用以下代码在滚动到 View 中时显示一个 div。我想简化这一点并在页面加载时显示 div,而不是在滚动到 View 中时显示。任何帮助都会很棒。非常感谢。

var animateHTML = function () {
  var elems,
    windowHeight
  var init = function () {
    elems = document.getElementsByClassName('hidden')
    windowHeight = window.innerHeight
    _addEventHandlers()
  }
  var _addEventHandlers = function () {
    window.addEventListener('scroll', _checkPosition)
    window.addEventListener('resize', init)
  }
  var _checkPosition = function () {
    for (var i = 0; i < elems.length; i++) {
      var posFromTop = elems[i].getBoundingClientRect().top
      if (posFromTop - windowHeight <= 0) {
        elems[i].className = elems[i].className.replace('hidden', 'fade-in-element')
      }
    }
  }
  return {
    init: init
  }
}
animateHTML().init()

最佳答案

您可以使用 Element#scrollIntoView使元素在视口(viewport)中可见。

您可以使用 DOMContentLoaded事件以了解 DOM 何时准备就绪。

注意:选项对象 - { behavior: 'smooth', block: 'center' } 仅受 Chrome 和 Firefox 支持。其他浏览器仅支持 alignToTop bool 值,并且由于该对象的计算结果为 true,该元素将跳到顶部。

document.addEventListener("DOMContentLoaded", function(event) {
  document.querySelector('.active').scrollIntoView({ 
    behavior: 'smooth',
    block: 'center'
  });
});
.block {
  width: 100px;
  height: 100px;
  border: 1px solid red;
}

.active {
  border: 1px solid blue;
}
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block"></div>
<div class="block active">Scroll into view</div>
<div class="block"></div>
<div class="block"></div>

关于javascript - 使用 Javascript 在页面加载时缩放 div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46788962/

相关文章:

javascript - 使用显示 : table and overflow: hidden in IE and Firefox (works in Webkit/blink) 时出现问题

javascript - 在 HTML 中选择后保持范围对象的更改

jquery - 选择选项中的颜色选择器

javascript - 在 php 中使用 JavaScript 进行多个 window.open

javascript - 用javascript理解查询字符串

javascript - json stringify 需要使用 javascript 将它们放入变量中的 2 个数组

javascript - 过滤字符串并返回值

javascript - 有条件追加而不过滤

html - 在另一个图像上实现图像

html - 如何仅使用 HTML 和 CSS 制作流程图/图表