簡體   English   中英

水平滾動頁面鏈接無法在其他頁面上使用

[英]Horizontal scrolling page links don't work from another page

我的頁面中有一個部分,借助一些Javascript可以水平滾動。 問題是,如果我從另一個頁面引用這些水平部分的鏈接,則這些鏈接將不起作用。 這里是工作示例(主導航中的“我們提供什么”子鏈接): http : //fitnessacademysurrey.cloudlevel.me

如果我導航到博客頁面,然后使用“我們提供的內容”子鏈接,則它們不會執行任何操作。

這是鏈接的代碼:

$(document).ready(function () {
var sildeNum = $('.page').length,
    wrapperWidth = 100 * sildeNum,
    slideWidth = 100/sildeNum;
$('.wrapper').width(wrapperWidth + '%'); 
$('.page').width(slideWidth + '%');

$('a.scrollitem').click(function(){
    $('a.scrollitem').removeClass('selected');
    $(this).addClass('selected');

    $('#nav-subnav ul li').removeClass('active');
    $('.panelHeading').addClass('hidden');
    $("a.scrollitem").each(function(index) {
    if($(this).hasClass("selected"))
        $("#nav-subnav ul li:nth-child("+(index+1)+")").addClass("active"),
        $(".panelHeading:nth-child("+(index+2)+")").removeClass("hidden");
    });

    $('#nextLink').removeClass('disabled');
    $('#previousLink').removeClass('disabled');
    if($('#nav-subnav ul li.active').is(':last-child'))
        $('#nextLink').addClass('disabled');

    if($('#nav-subnav ul li.active').is(':first-child'))
        $('#previousLink').addClass('disabled');

    var slideNumber = $($(this).attr('href')).index('.page'),
        margin = slideNumber * -100 + '%';

    $('.wrapper').animate({marginLeft: margin},500);
    return false;

  });
});
$( function() {
  var hash = window.location.hash;
  if (hash.length > 1) {
    $("[href='" + hash + "']").click();
  }
});

previousLink和nextLink用於其他導航,但是我認為這無關。

有人可以幫忙嗎?

很好的問題是,您使用JavaScript來滾動頁面,因此您需要添加代碼以讀取哈希並找到正確的鏈接並單擊它。

$( function() {
    var hash = window.location.hash;
    if (hash.length > 1) {
        $("[href='" + hash + "']").click();
    }
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM