我有一個修復div,當我向下滾動時,當我滾動時,需要將它隱藏到特定的ID。當到達特定的ID時,隱藏滾動的div元素
-2
A
回答
0
試試這個:
$.fn.isOnScreen = function() {
var win = $(window);
var viewport = {
top: win.scrollTop(),
left: win.scrollLeft()
};
viewport.right = viewport.left + win.width();
viewport.bottom = viewport.top + win.height();
var bounds = this.offset();
bounds.right = bounds.left + this.outerWidth();
bounds.bottom = bounds.top + this.outerHeight();
return (!(viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom));
};
而且使用這樣的:
$(window).scroll(function() {
if ($('#sampleId').isOnScreen() == true) {
$('.fixDiv').hide();
}
else{
$('.fixDiv').show();
}
});
你嘗試過什麼?你可以張貼一些代碼嗎。有些網站教你這種東西(www.w3schools.com就是其中之一)。 CSS很可能是你需要的,但我需要更多的信息來幫助你。 – nurchi
你可以嘗試比較div位置(頂部)和你想要達到的元素。嘗試使用getBoundingClientRect()函數:document.getElementById(「idOfElment」)。getBoundingClientRect()。頂部 –
@RicardoPontual謝謝。 我發現這個(檢查鏈接),但我需要改變它以某種方式使用ID而不是像素,我不能! http://codepen.io/samora/pen/JKqyNE – SaMore