簡體   English   中英

檢查某個部分的頁面

[英]check if page at a certain section

我想在用戶位於具有特定ID(通過鏈接或滾動)的頁面的一部分時觸發功能。 這就是我現在所擁有的,但它不起作用。

$(document).ready(function() {
    if (window.location.pathname == '/index.html#contact') {
        console.log('Viewing contact form');
    }
});

更新:找到我要找的東西。 這是我用過的:

$(window).bind('scroll', function() {
    if($(window).scrollTop() >= $('#contact').offset().top - 50) {
        $('.modal').modal('hide');
    }
});

“ - 50”用於說明我的邊距和填充。 使用減法符號時,它“假設”您的部分在頁面上開始更高。 對於較低的,使用添加。
“$('。modal')。modal('hide');” 不需要。 這是為了在用戶位於頁面的#contact部分時隱藏引導模式。

Javascript中的window.location屬性返回一個位置對象 如果要匹配特定的錨鏈接,則需要使用位置對象的hash屬性。 以下是位置對象的所有屬性列表: http//www.w3schools.com/jsref/obj_location.asp

您可以檢查window.location.pathname+window.location.hash

$(document).ready(function() {
    if (window.location.pathname+window.location.hash == '/index.html#contact') {
        console.log('Viewing contact form');
    }
});

因為window.location.pathname不包含散列后的部分。

你的Html代碼

<div id="contact">

</div>

您的Javascript代碼

 $("#contact").scroll(function() {
/*do whatever you want*/
    });

暫無
暫無

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

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