Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.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
Javascript 锚点链接滚动动画仅在Squarespace上刷新(JQuery)后起作用_Javascript_Jquery_Squarespace_Anchor Scroll - Fatal编程技术网

Javascript 锚点链接滚动动画仅在Squarespace上刷新(JQuery)后起作用

Javascript 锚点链接滚动动画仅在Squarespace上刷新(JQuery)后起作用,javascript,jquery,squarespace,anchor-scroll,Javascript,Jquery,Squarespace,Anchor Scroll,我目前正在建立一个Squarespace网站,我想添加带有锚链接的滚动动画 当前,单击锚定链接将立即捕捉到页面的该部分。然而,一旦我刷新,它就会开始工作。这似乎只是Chrome上的一个问题,我不太确定如何修复它,但我高度怀疑任何访问我页面的人会费心刷新它 我目前正在使用一个代码,该代码应该同时对页面上的所有锚链接起作用 如果我能得到任何帮助,我将不胜感激。代码如下: <script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.m

我目前正在建立一个Squarespace网站,我想添加带有锚链接的滚动动画

当前,单击锚定链接将立即捕捉到页面的该部分。然而,一旦我刷新,它就会开始工作。这似乎只是Chrome上的一个问题,我不太确定如何修复它,但我高度怀疑任何访问我页面的人会费心刷新它

我目前正在使用一个代码,该代码应该同时对页面上的所有锚链接起作用

如果我能得到任何帮助,我将不胜感激。代码如下:

<script src="//ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
 <script>
 $(function() {
   $('a[href*=#]:not([href=#])').click(function() {
     if (location.pathname.replace(/^\//,'') == this.pathname.replace(/^\//,'') && location.hostname == this.hostname) {
       var target = $(this.hash);
       target = target.length ? target : $('[name=' + this.hash.slice(1) +']');
       if (target.length) {
         $('html,body').animate({
           scrollTop: target.offset().top
         }, 1000);
         return false;
       }
     }
   });
 });
 </script>

$(函数(){
$('a[href*=#]:非([href=#])。单击(函数(){
if(location.pathname.replace(/^\/,'')==this.pathname.replace(/^\/,'')和&location.hostname==this.hostname){
var target=$(this.hash);
target=target.length?target:$('[name='+this.hash.slice(1)+']');
if(目标长度){
$('html,body')。设置动画({
scrollTop:target.offset().top
}, 1000);
返回false;
}
}
});
});

没有链接很难说,但可能是javascript和标签上内置的href机制之间的竞争

你可以试着换一个

$('a[href*=#]:非([href=#])。单击(函数(){

$('a[href*=#]:非([href=#])。单击(函数(e){e.preventDefault()


您描述的问题是由引起的。您可以在上查看可能的解决方案。简单地说,您的选项是禁用AJAX或修改代码以使其能够工作,上述链接中都提到了这两个选项