Magento?SID键被插入包含哈希

时间:2018-05-21 10:15:18

标签: php jquery wordpress magento

我在许多网站上使用了相同的jQuery来使页面滚动到相关部分而没有任何问题。但是我正在更新一个使用Magento页眉和页脚的wordpress博客站点,这似乎是删除了wp目录并将?SID键插入链接并且jQuery被忽略。

有没有办法阻止这种情况(我无法访问magento安装)。

网站网址:

  • the-url.com(magento install)
  • the-url.com/blog(wordpress install)

正在生成的链接:

  • the-url.com/?SID=cnndbpsb9mdmsj5d6vch049f83#brand

jQuery的:

    $('a[href^="#"]').on('click',function (e) {
        e.preventDefault();

        var target = this.hash;
        var $target = $(target);

        $('html, body').stop().animate({
            'scrollTop': $target.offset().top
        }, 900, 'swing', function () {
            window.location.hash = target;
        });
    });

HTML:

<ul class="fixednav">
    <li><a href="#about">About</a></li>
    <li><a href="#brand">Brand</a></li>
    <li><a href="#team">Team</a></li>
    <li><a href="#service">Service</a></li>
</ul>   

1 个答案:

答案 0 :(得分:1)

从#url字符串之后的网址中获取#值,如'#brand',只需从中获取'品牌'。

 var url ='www.site.com/?SID=cnndbpsb9mdmsj5d6vch049f83#brand';   
    var type = url.split('#');
    var hash = '';
    if(type.length > 1)
        hash = type[1];
    //this will alert the hash value from the url 
    alert(hash);
   //then use the hash value for scroll with on click function this is just an example 
    var offset=jQuery('#'+hash).offset().top-40;
    jQuery("html, body").animate({ scrollTop:offset }, 2000);