簡體   English   中英

使用switch語句滾動以從另一個頁面定位

[英]Using switch statement to scroll to anchor from another page

由於某種原因,我無法讓我的腳本執行任何滾動操作。 我正在使用switch語句來確定單擊了哪個鏈接(該鏈接位於我的導航上,因此您完全來自另一個頁面),然后我希望將頁面滾動到頁面頂部(並最終向下平滑滾動)再次錨定)。 由於某種原因,我的控制台日志語句被觸發,但是頁面沒有滾動到頂部。 當我輸入window.scrollTo(0,0); 盡管頁面向上滾動到控制台中...這是我的腳本,感謝您的幫助。

var URL = window.location.href;
var baseURL = window.location.protocol+'//'+window.location.host+window.location.pathname;

switch(URL) {
    case baseURL+'#skills':
        window.scrollTo(0, 0);
        console.log('you are on skills');       
        break;
    case baseURL+'#experience':
        window.scrollTo(0, 0);
        console.log('you are on expereince');       
        break;
    case baseURL+'#works':
        window.scrollTo(0, 0);
        console.log('you are on works');        
        break;
}

實際上,我得到了答案,而不是對錨鏈接應用名稱(以便瀏覽器直接跳轉至鏈接),我只是對每個鏈接應用了一個類,並在頁面加載后滾動到了它們。

$(window).on("load", function () {
     urlHash = window.location.href.split("#")[1];
    $('html,body').animate({
        scrollTop: $('.' + urlHash).offset().top
    }, 1000);
});

我的鏈接在HTML端看起來像這樣。

<a class="works">Portfolio</a>

暫無
暫無

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

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