[英]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.