【问题标题】:Pause scrolling at certain point for a short while在某个点暂停滚动一会儿
【发布时间】:2013-05-05 06:31:05
【问题描述】:

我希望用户向下滚动页面,当它到达某些点时“粘住”片刻,然后继续滚动。我有一个大的垂直页面,其中包含大图像之间的内容,当用户点击这些内容时,浏览器应该停止滚动一会儿然后继续滚动。我希望这将有助于突出显示页面上所有图像中的内容。

我希望这足够清楚:s

干杯

【问题讨论】:

  • 这是一个完全有效的问题,但作为用户,我认为我会发现这种行为令人沮丧。还有其他方法可以使内容在大页面中脱颖而出,而无需覆盖默认浏览器行为。
  • 您可以使用可用的“无限滚动”插件...仅加载到您要暂停的内容,然后加载下一个块等。

标签: javascript jquery


【解决方案1】:

你可以试试这样的:

$(function () {
  var delay = 2000,
    //Following var because http://stackoverflow.com/questions/3042651/jquery-scrolltop-not-working-in-chrome-but-working-in-firefox
    $scrollEl = $.browser.mozilla ? $('html') : $('body');
    selectors = ['#img1', '#img2', '#img3'];

  (function scrollPage() {
     var $el = $(selectors.shift());
     if ($el.length === 0) return;

     //animate
     $scrollEl.animate({ scrollTop: $el.offset().top }, 2000, function () {
        setTimeout(scrollPage, delay);
     });
   })();
});

演示:http://jsfiddle.net/aamir/eFmZj/7/show

播放:http://jsfiddle.net/aamir/eFmZj/7/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-12
    • 1970-01-01
    相关资源
    最近更新 更多