Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/74.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JQuery向左滚动到原点,增量相等_Jquery_Scrollto - Fatal编程技术网

JQuery向左滚动到原点,增量相等

JQuery向左滚动到原点,增量相等,jquery,scrollto,Jquery,Scrollto,我是一名经过培训的平面设计师,也是第一次做程序员,所以请对我宽容一些。我有两个问题,我已经研究过了,但一直无法回答。以下是我的实时站点供参考: 1:我试图让站点在页面刷新时(Safari中的cmd-R)一直滚动到左侧,这样当您单击一个名称然后尝试刷新时,滚动条就不会停留在相同的位置 我尝试了很多选择,包括这个: <script language="javascript"> $(document).ready(function() { $('html, body').

我是一名经过培训的平面设计师,也是第一次做程序员,所以请对我宽容一些。我有两个问题,我已经研究过了,但一直无法回答。以下是我的实时站点供参考:

1:我试图让站点在页面刷新时(Safari中的cmd-R)一直滚动到左侧,这样当您单击一个名称然后尝试刷新时,滚动条就不会停留在相同的位置

我尝试了很多选择,包括这个:

    <script language="javascript">
    $(document).ready(function() { $('html, body').animate({ scrollLeft : 0 },800); });
    }
    </script>

$(文档).ready(函数(){$('html,body').animate({scrollLeft:0},800);});
}
但似乎一切都不起作用

2:我在页面底部有一个小箭头,当用户选择了一个名字后,它可以帮助用户进行水平导航。它们由以下两个功能控制:

    <script>
    function goToByScroll2(id){
    $('html,body').animate({scrollLeft: $("#"+id).offset().left - 600 },'slow');
    }
    </script>

    <script>
    function goToByScroll3(id){
    $('html,body').animate({scrollLeft: $("#"+id).offset().left + 600 },'slow');
    </script>

函数goToByScroll2(id){
$('html,body').animate({scrollLeft:$(“#”+id).offset().left-600},'slow');
}
函数goToByScroll3(id){
$('html,body').animate({scrollLeft:$(“#”+id).offset().left+600},'slow');
基本上,我希望滚动增量是相同的,但返回然后向前会使我处于不同的位置。我认为这是因为它相对于id偏移,我不确定解决这个问题的最佳方法是什么


非常感谢您的帮助。

我强烈推荐使用scrollTo插件:

我相信当你使用这个插件时,你会轻而易举地得到想要的结果

试一试,如果你不能得到想要的结果,请报告

第1期:

$.scrollTo( {left:'0'}, 800 );
那当然行

第2期:

$.scrollTo( {left:'+=100px'}, 800 );

应该可以完成这项工作。

我一开始确实尝试过使用这个插件,但仍然无法让它在页面刷新时向左滚动,或者前后滚动相等的增量。使用scrollTo,您可以指定要滚动的元素,这使它非常动态。如果您确实想获得相等的增量,可以使用
$(…)。scrollTo({top:'110px',left:'290px'},800);
或相对位置:
$(…)。滚动到({top:'-=100px',left:'+=100'},800);
。为什么这对你不起作用?对于第一个问题,我认为这是因为我无法在页面刷新时发生事件。对于第二个问题,这是因为我的scrollTo代码相对于它所在的div添加或减去像素。使用scrollTo更新了我的答案。我已经用这两段代码更新了我的live站点,两者似乎都不起作用。箭头现在根本不起作用。在“我的客户端”中刷新时,它总是返回到原始位置(左:0)。除非使用哈希挂钩,否则这也是预期的行为。