Javascript 如何在div可见时获取事件

Javascript 如何在div可见时获取事件,javascript,html,performance,Javascript,Html,Performance,我正在使用js渲染一个网站,希望优化我的渲染周期 当页面元素对用户可见时,是否有方法获取事件 这样可以延迟元素的呈现,直到它们可见为止?var viewportWidth=jQuery(window).width(), var viewportWidth = jQuery(window).width(), viewportHeight = jQuery(window).height(), documentScrollTop = jQuery(document).scrollTop(),

我正在使用js渲染一个网站,希望优化我的渲染周期

当页面元素对用户可见时,是否有方法获取事件

这样可以延迟元素的呈现,直到它们可见为止?

var viewportWidth=jQuery(window).width(),
 var viewportWidth = jQuery(window).width(),
 viewportHeight = jQuery(window).height(),
 documentScrollTop = jQuery(document).scrollTop(),
 documentScrollLeft = jQuery(document).scrollLeft(),
 minTop = documentScrollTop,
 maxTop = documentScrollTop + viewportHeight,
 minLeft = documentScrollLeft,
 maxLeft = documentScrollLeft + viewportWidth,
 $myElement = jQuery(element), // your element jquery object
 elementOffset = $myElement.offset();
 if (
 (elementOffset.top > minTop && elementOffset.top < maxTop) &&
 (elementOffset.left > minLeft &&elementOffset.left < maxLeft)
  ) {
  alert('element is visible');
  } else {
  alert('element is not visible');
  }
viewportHeight=jQuery(窗口).height(), documentScrollTop=jQuery(document).scrollTop(), documentScrollLeft=jQuery(document).scrollLeft(), minTop=documentScrollTop, maxTop=documentScrollTop+viewportHeight, minLeft=documentScrollLeft, maxLeft=documentScrollLeft+viewportWidth, $myElement=jQuery(元素),//您的元素jQuery对象 elementOffset=$myElement.offset(); 如果( (elementOffset.top>minTop&&elementOffset.topminLeft&&elementOffset.left
var viewportWidth=jQuery(window).width(),
viewportHeight=jQuery(窗口).height(),
documentScrollTop=jQuery(document).scrollTop(),
documentScrollLeft=jQuery(document).scrollLeft(),
minTop=documentScrollTop,
maxTop=documentScrollTop+viewportHeight,
minLeft=documentScrollLeft,
maxLeft=documentScrollLeft+viewportWidth,
$myElement=jQuery(元素),//您的元素jQuery对象
elementOffset=$myElement.offset();
如果(
(elementOffset.top>minTop&&elementOffset.topminLeft&&elementOffset.left
google
“视口可见”

谷歌
“视口可见”


由于您没有解释是否有任何特定的库/框架在使用,或者是否有任何特定的条件使元素可见,我将给出以下信息:

jQuery$(document).ready()可以检测是否加载了整个页面


另一方面,如果元素是display:none或visibility:hidden,或者两者都是,或者其他什么,那么您可以使用jQuery作为条件:$('element')。is(':visible'),并触发if语句中的任何内容

由于您没有解释是否有任何特定的库/框架在使用,或者是否有任何特定的条件使元素可见,我将给出以下内容:

jQuery$(document).ready()可以检测是否加载了整个页面


另一方面,如果元素是display:none或visibility:hidden,或者两者都是,或者其他什么,那么您可以使用jQuery作为条件:$('element')。is(':visible'),并触发if语句中的任何内容

重复的?事实上我说不,因为这个问题要么被标记为jQuery,他也没有提到他使用它。重复的?事实上我说不,因为这个问题要么被标记为jQuery,他也没有提到他使用它。这是使用jQuery-如果你不能使用jQuery,请告诉我我将尝试在常规js中使用它。这是使用jQuery-如果你不能使用jQuery,请告诉我我将尝试在常规js中使用它