摘要:個(gè)人筆記在給在線簡(jiǎn)歷添加特效過(guò)程中遇到的問(wèn)題及解決方法一預(yù)覽頁(yè)面滾動(dòng)元素的事件處理函數(shù)。語(yǔ)法參數(shù)是一個(gè)函數(shù)的引用。事件是當(dāng)窗口發(fā)生滾動(dòng)得時(shí)候觸發(fā)的事件返回文檔在垂直方向已滾動(dòng)的像素值。
(個(gè)人筆記)在給在線簡(jiǎn)歷添加js特效過(guò)程中遇到的問(wèn)題及解決方法 一
github
預(yù)覽
元素的 scroll 事件處理函數(shù)。語(yǔ)法 element.onscroll = functionReference 參數(shù) functionReference是一個(gè)函數(shù)的引用。
當(dāng)該元素滾動(dòng)時(shí),會(huì)執(zhí)行該函數(shù)。
window.onscroll事件是當(dāng)窗口發(fā)生滾動(dòng)得時(shí)候觸發(fā)的事件
Window.scrollY返回文檔在垂直方向已滾動(dòng)的像素值。
MDN
點(diǎn)我觸發(fā)點(diǎn)擊事件
實(shí)際上點(diǎn)到了span上面
a.target是用戶操作的
a.currentTarget是監(jiān)聽的
打印如下:
https://developer.mozilla.org...
下一個(gè) 兄弟子節(jié)點(diǎn)
let a = x.currentTarget; let brother = a.nextSibling; while (brother.nodeType === 3){ // brother.nodeType === 3說(shuō)明brother還是回車或者文字或者空格,循環(huán)到他不是為止 brother = brother.nextSibling; }
或者
while (brother.tagName !== "UL"){ // brother.nodeType === 3說(shuō)明brother還是回車或者文字或者空格,循環(huán)到他不是為止 brother = brother.nextSibling; }
tagName返回的是大寫的標(biāo)簽名
獲取所有滿足條件的結(jié)點(diǎn)let liTags = document.querySelectorAll("nav.meau > ul > li");transition過(guò)渡注意點(diǎn)
過(guò)不不能操控的元素有margin,display
一般用來(lái)操控:
寬高width,height
定位后的right,left等
透明度opacity
陰影box-shadow
demo預(yù)覽地址
核心是transition(過(guò)渡),但是仍未解決transition對(duì)display無(wú)效的問(wèn)題.
目前只做到,讓其透明讀變成0,近似消失.
代碼:
preventDefault()禁止默認(rèn)動(dòng)作transitionTest
a.onclick = function (x) { x.preventDefault();//禁止默認(rèn)動(dòng)作.即禁止a標(biāo)簽的默認(rèn)錨點(diǎn)跳轉(zhuǎn)動(dòng)作 }a.href和 a.getAttribute("href")區(qū)別
aTags[i].onclick = function (x) { x.preventDefault();//禁止默認(rèn)動(dòng)作.即禁止a標(biāo)簽的默認(rèn)錨點(diǎn)跳轉(zhuǎn)動(dòng)作 let a = x.currentTarget; console.log(a.href); console.log( a.getAttribute("href")); }
a.href返回的是帶域名的href的值
a.getAttribute("href")就返回href里面的值
弄清元素距離頁(yè)面頂部的距離和距離視口頂部的距離:
頁(yè)面頂部指的是整個(gè)網(wǎng)頁(yè)的頂部,即隨著頁(yè)面的滾動(dòng),元素距離頁(yè)面頂部的距離不會(huì)變化.
window.scrollX
window.scrollY是網(wǎng)頁(yè)滾動(dòng)的距離,即視口頂部距離網(wǎng)頁(yè)頂部的距離.
為了跨瀏覽器兼容,請(qǐng)使用 window.pageXOffset 和 window.pageYOffset 代替 window.scrollX 和 window.scrollY。
Element.getBoundingClientRect().top是元素Element距離視口頂部的距離
參考這里Element.getBoundingClientRect()
element.offsetTop是元素頂部距離網(wǎng)頁(yè)最上層的距離
HTMLElement.offsetTop 為只讀屬性,它返回當(dāng)前元素相對(duì)于其 offsetParent 元素的頂部的距離。
offsetTop
element.offsetTop等于Element.getBoundingClientRect().top + window.scrollX
aTags[i].onclick = function (x) { x.preventDefault();//禁止默認(rèn)動(dòng)作.即禁止a標(biāo)簽的默認(rèn)錨點(diǎn)跳轉(zhuǎn)動(dòng)作 let a = x.currentTarget; // console.log(a.href); let href = a.getAttribute("href")//"#siteSkills" let element = document.querySelector(href); console.log("element.getBoundingClientRect().top為:"+element.getBoundingClientRect().top); console.log("(window.scrollY為:"+window.scrollY); console.log("上面兩個(gè)的和為"+(element.getBoundingClientRect().top+window.scrollY));//相加等于offsetTop console.log("element.offsetTop為:"+element.offsetTop)//只讀屬性 }window.scrollTo(x,y)滾動(dòng)到文檔中的某個(gè)坐標(biāo).
窗口移動(dòng)到相應(yīng)位置(網(wǎng)頁(yè)左上角的移動(dòng)到(x,y)
document.querySelector()document.querySelector()返回的是一個(gè)元素,
但是區(qū)別于:document.querySelectorAll("nav>ul>li>a")
返回的是數(shù)組
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/94885.html
摘要:個(gè)人筆記在給在線簡(jiǎn)歷添加特效過(guò)程中遇到的問(wèn)題及解決方法二預(yù)覽點(diǎn)擊菜單滾動(dòng)動(dòng)畫首頁(yè)目標(biāo)位置當(dāng)作終點(diǎn)坐標(biāo)當(dāng)前滾動(dòng)到的距離當(dāng)做起點(diǎn)是步數(shù)分步是每次重復(fù)都加的變量既要清除又要毫秒除以幀就是每走一步的時(shí)間庫(kù)緩動(dòng)動(dòng)畫緩動(dòng)函數(shù)速查表庫(kù)搜索引入一個(gè)網(wǎng)站 (個(gè)人筆記)在給在線簡(jiǎn)歷添加js特效過(guò)程中遇到的問(wèn)題及解決方法 二 github預(yù)覽 點(diǎn)擊菜單滾動(dòng)動(dòng)畫首頁(yè) let top = element.of...
摘要:不是一下子能看完綜合使用編程是一番怎樣的體驗(yàn)學(xué)習(xí)筆記網(wǎng)站前端開發(fā)基礎(chǔ)算法題如何優(yōu)雅地使用如何優(yōu)雅地使用零度博客碼農(nóng)網(wǎng)伯樂(lè)在線什么是頁(yè)面渲染國(guó)外先更到這,還有太多網(wǎng)址,先歸類一下再補(bǔ)充。 最近在復(fù)習(xí)JavaScript知識(shí)時(shí)遇到以前就不懂的閉包、上下文,雖然比以前理解深了一點(diǎn),但還是懵,想緩一下。。就去看了其他。。把Git、Grunt、Gulp、jQuery、jQuery UI、Reac...
摘要:不是一下子能看完綜合使用編程是一番怎樣的體驗(yàn)學(xué)習(xí)筆記網(wǎng)站前端開發(fā)基礎(chǔ)算法題如何優(yōu)雅地使用如何優(yōu)雅地使用零度博客碼農(nóng)網(wǎng)伯樂(lè)在線什么是頁(yè)面渲染國(guó)外先更到這,還有太多網(wǎng)址,先歸類一下再補(bǔ)充。 最近在復(fù)習(xí)JavaScript知識(shí)時(shí)遇到以前就不懂的閉包、上下文,雖然比以前理解深了一點(diǎn),但還是懵,想緩一下。。就去看了其他。。把Git、Grunt、Gulp、jQuery、jQuery UI、Reac...
閱讀 1464·2023-04-25 17:18
閱讀 1893·2021-10-27 14:18
閱讀 2134·2021-09-09 09:33
閱讀 1851·2019-08-30 15:55
閱讀 2024·2019-08-30 15:53
閱讀 3448·2019-08-29 16:17
閱讀 3436·2019-08-26 13:57
閱讀 1738·2019-08-26 13:46