javascript - 我应该在 Javascript 中的什么位置添加 setTimeout 才能使其正常工作?

标签 javascript settimeout

我是一个新手,已经实现了我在其他地方得到的这段 Javascript,它工作得很好,让我的 div 随页面滚动:

<script type="text/javascript">
<!-- // sick
var scroll = 0;
var marginTop = 0;
$(document).ready(function() {
    $(window).scroll(function() {
        marginTop = ($(document).scrollTop() - scroll) + marginTop;
        scroll = $(document).scrollTop();
        $("#scrollregister").animate({
            "marginTop": marginTop + "px"
        }, {
            duration: 1000,
            queue: false
        });
    });
});
// -->
</script>

我的问题是我想延迟这个脚本的执行(不仅仅是增加执行所需的秒数,而是延迟它启动的时间)。我知道我可以使用 setTimeout 来做到这一点,并且我已经用 google 搜索并搜索了这个网站,看看我是否可以通过使用 setTimeout 查看其他代码来弄清楚如何将 setTimeout 添加到上面的代码中。然而,尽管我尽了最大努力,但我还是未能正确实现。我希望您能告诉我如何实现它。

最佳答案

试试这个代码

<script type="text/javascript">

var scroll = 0;
var marginTop = 0;
$(document).ready(function() {
    $(window).scroll(function() {
        marginTop = ($(document).scrollTop() - scroll) + marginTop;
        scroll = $(document).scrollTop();
        window.setTimeout(scrollDiv, 2000);        
    });
    function scrollDiv()
    {
        $("#scrollregister").animate({
            "marginTop": marginTop + "px"
        }, {
            duration: 1000,
            queue: false
        });
    }
});
</script>

关于javascript - 我应该在 Javascript 中的什么位置添加 setTimeout 才能使其正常工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17190333/

相关文章:

javascript - onLoad 不适用于元素

javascript - 如何使 jQuery 触发事件的频率降低

javascript - 如何在特定的 jquery 验证结构中验证 radio

javascript - 将 ajax 调用中的 JSON 数据显示为 HTML

javascript - 选择与部分字符串匹配的第一个完整字符串

javascript - 如何协调声音和动画的时间

backbone.js - Backbone.Marionette onRender 回调在浏览器中呈现 View 之前触发?

javascript - removeChild 函数不与 setTimeout 函数一起使用

javascript - 在 JavaScript 中如何修复元素显示和变量创建之间的初始差异

javascript - 如何在保持可维护性的同时分离关注点(JS、HTML)?