首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >jQuery -如何让浏览器窗口在点击div时水平滚动?

问jQuery -如何让浏览器窗口在点击div时水平滚动?
EN

Stack Overflow用户
提问于 2011-02-21 08:39:46
回答 3查看 9.7K关注 0票数 3

我在div中有一张箭头的图片。这个div固定在非常宽页面的右下角。

如何使用jQuery在每次单击div时向右滚动600px的窗口?(是否可以检测到页面何时不能再向右滚动,并隐藏箭头?)

干杯。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-02-21 08:50:06

使用jquery方法scrollLeft

代码语言:javascript
复制
$(document).ready(function(){
    $(window).scrollLeft((Number($(window).scrollLeft())+600)+'px');
});

大概是这样的:)

票数 2
EN

Stack Overflow用户

发布于 2011-02-21 09:05:06

尝试如下所示:

代码语言:javascript
复制
var distance = 600;
$("div").click(function() {
    $("html:not(:animated), body:not(:animated)").animate(
        {scrollLeft: "+="+distance}, 400
    );
});

jsfiddle这里:http://jsfiddle.net/juXLu/2/

编辑,这里检测您是否在文档http://jsfiddle.net/lukemartin/juXLu/5/的末尾

代码语言:javascript
复制
var distance = 600,
    docWidth = $(document).width(),
    scrollPos;

// click handler
$("div").click(function() {

    // animate 
    $("html:not(:animated), body:not(:animated)").animate(
        // amount to scroll
        {scrollLeft: "+=" + distance},
        // scroll speed (ms)
        400,
        // callback function
        function(){
            // check our scroll position
            scrollPos = $(window).width() + $(window).scrollLeft(); 
            // if it equals the doc width, we're at the end
            if(docWidth === scrollPos) {
                $("div").text("End of the line");
            }
        }
    );    

});
票数 3
EN

Stack Overflow用户

发布于 2011-02-21 08:53:56

你可以使用Scrollto插件,

http://plugins.jquery.com/project/ScrollTo

它非常容易使用,只需使用文档即可。然后,您可以创建一个占位符来确定它是否位于页面末尾。只需将占位符放在最后,并计算距离。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5061241

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档