哈希标记不起作用 - 单页

时间:2014-06-07 16:21:35

标签: jquery wordpress

我在http://www.keynote-kommunikation.de/有这个wordpress网站 该网站主要使用paralalax / scroll效果。

有些网页是单页,例如介绍后的“新闻”上的帖子,以及版本说明页面:http://www.keynote-kommunikation.de/impressum/

在这个单一页面上,菜单上的链接无效。它们会触发主页面,但不会滚动到确切的位置。

为什么?

这是我用来在“新闻”之后删除介绍视频的代码,这是一个要求,我需要它,但这就是导致问题的原因。

//
var startScroll = $('.header').outerHeight();

$(window).scroll(function() {

var scrollTop = $window.scrollTop();

            if(scrollTop > startScroll) {
                // do something
                $('.header').addClass('header-remove');
                $('.wrap').addClass('wrap-remove');
                $('.inline-menu').addClass('menu-fixed').css('top', adminBar);

                window.scrollTo(0,0);
                startScroll = 22222;
            }

        });

1 个答案:

答案 0 :(得分:0)

试试这个,

检查网址中是否包含#value,如果是,则不允许使用首页视频动画,

您有以下插入视频的代码

        <script>
        jQuery(document).ready(function() {
            jQuery('.video-insert').videoBG({
                mp4:'http://www.keynote-kommunikation.de/wp-content/uploads/2014/04/KK5x.mp4',
                ogv:'http://www.keynote-kommunikation.de/wp-content/uploads/2014/04/KK5x.ogv',
                //poster:'http://www.keynote-kommunikation.de/wp-content/uploads/2014/04/KK5.jpg',
                scale:true,
                zIndex: 1,
                autoplay: true,
        loop: 0,
            });

            ...

        });
        </script>

即。在页面加载时,您在.video-insert内插入视频现在,当您在网址中有哈希值时,请不要运行上述代码,

如何检查网址中的#hash值

var hval = window.location.hash.slice(1); //TO GET #VAL FROM URL

  if(hval == ''){ 
    //IF NO #VAL, LOAD VIDEO CODE HERE
     ...
  }else{ // WHEN THERE IS A #VAL IN URL
   switch(hval){
     case 'news':
                   $('html, body').animate({
                     scrollTop: $("#news").position().top
                   }, 2000);
                 break;
     case 'somethingelse':
              ...
              ...

  }

}