亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有沒有辦法確定頂部的像素?

有沒有辦法確定頂部的像素?

元芳怎么了 2022-09-29 17:26:13
我比任何事情都需要更多的解釋,但歡迎舉例說明。我試圖使它,所以當我向下滾動時,屏幕上的特定元素將在滾動時淡入。唯一的問題是,我需要一種方法來確定元素從頂部到下有多遠,使用提供的代碼(或者更好的方法)。有沒有一種不同的方法可以使滾動效果工作,而不必從頂部的像素單位開始?如果沒有,你怎么能找到距離?這是我一直在使用的代碼。if (window.scrollY>300)
查看完整描述

2 回答

?
繁花如伊

TA貢獻2012條經驗 獲得超12個贊

下面是使用交集觀察者 API 的簡單示例


const inViewport = (entries, observer) => {

  entries.forEach(entry => {

    entry.target.classList.toggle("active", entry.isIntersecting);

  });

};


let observer = new IntersectionObserver(inViewport);

observer.observe(document.querySelector('#box'));

body { height:300vh; }

#box { width:100px; height:100px; position:absolute; top:150vh; background:red; }


/* InViewport transitions */


[data-inviewport="fade-rotate"] { /* Default state */

  transition: 2s;

  opacity: 0.1;

}

[data-inviewport="fade-rotate"].active { /* Active state */

  transform: rotate(180deg);

  opacity: 1;

}

Scroll down...

<div id="box" data-inviewport="fade-rotate"></div>


查看完整回答
反對 回復 2022-09-29
?
忽然笑

TA貢獻1806條經驗 獲得超5個贊

當元素進入頁面底部時,將觸發此操作:

if(element.getBoundingClientRect().top <= window.innerHeight)

當元素豐富屏幕中間時,將觸發

if(element.getBoundingClientRect().top <= window.innerHeight / 2)

當然,所有事件都應該在窗口事件上onscroll


查看完整回答
反對 回復 2022-09-29
  • 2 回答
  • 0 關注
  • 93 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號