Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/435.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

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 如何使用转换将菜单项链接到其右侧部分_Javascript_Jquery_Html_Wordpress - Fatal编程技术网

Javascript 如何使用转换将菜单项链接到其右侧部分

Javascript 如何使用转换将菜单项链接到其右侧部分,javascript,jquery,html,wordpress,Javascript,Jquery,Html,Wordpress,我正试图实现我的jsfiddle:在Wordpress站点中显示的相同原则 所以我的navbar.js目前是这样的: (function( $ ){ $(document).ready(function(){ $(".burguer-nav").on("click", function(){ $("header nav ul").toggleClass("open"); }); function scr

我正试图实现我的jsfiddle:在Wordpress站点中显示的相同原则

所以我的navbar.js目前是这样的:

(function( $ ){   
   $(document).ready(function(){
       $(".burguer-nav").on("click", function(){
          $("header nav ul").toggleClass("open");  
       });        
       function scrollToAnchor(aid){
            var aTag = $("a[name='"+ aid +"']");
            $('html,body').animate({scrollTop: aTag.offset().top},'slow');
            $("header nav ul li:first-child a").addClass("about-item");
            $("header nav ul li:last-child a").addClass("contact-item");
        }
        $(".about-item").click(function() {
           scrollToAnchor('about-us');
        });
        $(".contact").click(function() {
           scrollToAnchor('contact');
        });
   });    
})(jQuery);
这就是我的一个部分的样子:

<a name="about-us"></a>    
<section class="about container about-marker">           
    <?php               
    $queryposts = array(                            
        'post__in' => array(7),                 
        'post_type' => 'page',                
        'posts_per_page' => -1,                  
        'order' => 'ASC'             
        );                     
    $lastblog = new WP_Query( $queryposts );                        
    if($lastblog->have_posts() ):                
        while($lastblog->have_posts()): $lastblog->the_post(); ?>                    
            <?php the_content(); ?>                  
                <?php endwhile;            
                endif;                        
                wp_reset_postdata();       
                ?>    
</section>


如何正确实现此功能,以便无论何时单击about或contact,它都会转到相应的部分而不必跳转

给你的div一个ID,你可以这样做:

$('html, body').animate({
    scrollTop: $("#myDiv").offset().top
}, 2000);

但是jqueryanimate的性能很差。如果你想要真正流畅的动画,你可以使用它并以此为例,请尝试这个javascript代码片段

(函数($){
$(文档).ready(函数(){
$(“#主菜单>li>a”)。在(“单击”上,函数(事件){
event.preventDefault();
var bookMark=$(this.attr(“href”).substring(1,$(this.attr(“href”).length);
bookMarkTag=$(“a[name='”+bookMark+']);
如果(书签!==未定义){
$('html,body').animate({scrollTop:bookMarkTag.offset().top},Math.floor(bookMarkTag.offset().top));
}
})
});

})(jQuery)我不太明白。您发送的代码段不起作用。哎呀,这个代码笔在safari上性能良好,但在chrome上不起作用。可能库导入不好。但是,如果您看一看,有一个很好的例子可以让您使用velocity.jsI轻松滚动。jsI更新了codepen.io链接。它现在起作用了,你可以再试一次,但我想第一个问题需要先解决。如果你检查元素,你会发现我试图添加到链接中的类没有被添加…这意味着函数中有问题,你会尝试现在实现,并让你知道我是否发现了任何约束。我已经编辑了上面的答案,请使用上面的javascript代码片段并检查。谢谢这确实会有所不同,但是…看起来越往下看,向下滚动的速度就越快。当我点击“关于项目”时,它会转到“关于”部分。当我点击“产品和服务”时,它会快一点。如果我点击“联系人”下的,它会快得多。有没有办法控制速度?我已经修改了代码,使之成为一个恒定的速度,你可以在动画功能中用第二个参数乘/除一些数字来改变恒定的速度。实际上,第二个参数表示它将对该元素设置动画的时间,因此必须根据可变距离指定可变时间。希望有帮助!这真的有很大的不同。但是我怎样才能控制速度呢?比方说,我希望它能快一点。@Wosley Alarico。取消激活widgetkit滑块,并查看当您单击cotact us时是否仍会暂停