如何在滚动到某个div元素后启动javascript函数

如何在滚动到某个div元素后启动javascript函数,javascript,jquery,html,Javascript,Jquery,Html,如何仅在向下滚动至“myTargetElement”并在屏幕上显示时启动此功能,而不是在加载页面后立即启动 <script src="countUp.min.js" type='text/javascript'></script> <script> $(document).ready(function() { var countOptions = { useEasing : true, useGrouping : tr

如何仅在向下滚动至“myTargetElement”并在屏幕上显示时启动此功能,而不是在加载页面后立即启动

<script src="countUp.min.js" type='text/javascript'></script>

<script>
$(document).ready(function() {
    var countOptions = {
        useEasing : true,
        useGrouping : true,
        separator : ',',
        decimal : '.'
    }
    var customerNumber = new countUp("myTargetElement", 0, 1635, 0, 7, countOptions);
    customerNumber.start();

});
</script>

$(文档).ready(函数(){
var countOptions={
对,,
对,,
分隔符:',',
十进制:'.'
}
var customerNumber=new countUp(“myTargetElement”,0,1635,0,7,countOptions);
customerNumber.start();
});

滚动事件检查目标元素偏移顶部和文档滚动顶部是否相同,如果相同,则触发功能

$(document).scroll(function(){
    if($('.myTargetElement').offset().top == $(document).scrollTop()){
        //Trigger function
    }
});

以下脚本将在其可见时立即激发它():

$(窗口)。滚动(函数(){
如果(isElementVisible($('yourElementID')){
$(窗口).off('scroll');
//从这里打电话
}
});
函数isElementVisible(元素)
{
var visibleTop=$(window.scrollTop();
var visibleBottom=visibleTop+$(window.height();

return((elem.offset().top+elem.height())还没什么,刚刚开始学习这门语言;)谢谢,这几乎就是我需要的:)如何只触发一次?只需使用$(window.off('scroll');。查看更新的答案。
$(window).scroll(function() {
                 if(isElementVisible($('#yourElementID'))) {
        $(window).off('scroll');
                     //Call From here

}
});


function isElementVisible(elem)
{
    var visibleTop = $(window).scrollTop();
    var visibleBottom = visibleTop + $(window).height();

    return ((elem.offset().top + elem.height()) <= visibleBottom);
}