javascript實(shí)現(xiàn)鼠標(biāo)拖尾特效
鼠標(biāo)特效需要使用定時(shí)器setTimeout在固定時(shí)間生成節(jié)點(diǎn),刪除節(jié)點(diǎn),生成的節(jié)點(diǎn)賦予隨機(jī)的寬高,隨機(jī)顏色,使每個(gè)特效節(jié)點(diǎn)都看起來(lái)不一樣
注意:生成的節(jié)點(diǎn)需要設(shè)置絕對(duì)定位,使其脫離文檔流,不影響頁(yè)面中其他元素的位置
代碼示例:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>鼠標(biāo)特效</title> <style> * { margin: 0; padding: 0; } body { background-color: #9df; overflow: hidden; height: 100vh; } span { height: 30px; width: 30px; border-radius: 50%; position: absolute; pointer-events: none; transform: translate(-50%, -50%); box-shadow: 10px 10px 30px #45f, -10px -10px 30px #d80; animation: box 5s linear infinite; z-index: 3; } @keyframes box { 0% { transform: translate(-50%, -50%); opacity: 1; filter: hue-rotate(0deg); } 100% { transform: translate(-50%, -1000%); opacity: 1; filter: hue-rotate(720deg); } } </style> </head> <body> </body> </html> <script> document.addEventListener("mousemove", function(e) { var body = document.querySelector("body"); var span = document.createElement("span"); var x = e.offsetX var y = e.offsetY span.style.left = x + "px" span.style.top = y + "px"; console.log(x + ">>>" + y) var a = Math.random() * 30; span.style.width = 30 + a + "px"; span.style.height = 30 + a + "px"; body.appendChild(span); setTimeout(function() { span.remove(); // console.log("ok") }, 4500) }) </script>
運(yùn)行結(jié)果:
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- JavaScript中常用的數(shù)組操作方法
- 深入淺出探究JavaScript中的async與await
- JavaScript實(shí)現(xiàn)經(jīng)典貪吃蛇游戲
- Javascript基礎(chǔ)知識(shí)中關(guān)于內(nèi)置對(duì)象的知識(shí)
- JavaScript 運(yùn)行機(jī)制詳解再淺談Event Loop
- Python 協(xié)程與 JavaScript 協(xié)程的對(duì)比
- JavaScript實(shí)現(xiàn)簡(jiǎn)單拖拽效果
- JavaScript 數(shù)組去重詳解
- JavaScript實(shí)現(xiàn)飛機(jī)大戰(zhàn)游戲
- JavaScript setinterval延遲一秒解決方案
- JavaScript 上傳文件限制參數(shù)案例詳解
- 簡(jiǎn)單談?wù)凧avaScript變量提升
- 深入理解JavaScript的事件執(zhí)行機(jī)制
- 8個(gè)工程必備的JavaScript代碼片段
相關(guān)文章
javascript使用appendChild追加節(jié)點(diǎn)實(shí)例
這篇文章主要介紹了javascript使用appendChild追加節(jié)點(diǎn)的方法,實(shí)例分析了appendChild()函數(shù)增加結(jié)點(diǎn)的使用技巧,需要的朋友可以參考下2015-01-01jquery實(shí)現(xiàn)select下拉框美化特效代碼分享
這篇文章主要介紹了jquery實(shí)現(xiàn)select下拉框美化特效,實(shí)現(xiàn)效果簡(jiǎn)潔大方,推薦給大家,有需要的小伙伴可以參考下。2015-08-08JS中的Error對(duì)象及使用JSON.stringify()序列化Error問(wèn)題
這篇文章主要介紹了JS中的Error對(duì)象及使用JSON.stringify()序列化Error問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08JavaScript數(shù)據(jù)在不同頁(yè)面的傳遞(URL參數(shù)獲?。?/a>
這篇文章主要介紹了JavaScript數(shù)據(jù)在不同頁(yè)面的傳遞(URL參數(shù)獲取),下面文章圍繞JavaScript數(shù)據(jù)在不同頁(yè)面的傳遞的實(shí)現(xiàn)過(guò),想了解的小伙伴可以和小編一起進(jìn)入文章了解具體內(nèi)容,需要的也朋友可參考一下2021-12-12js實(shí)現(xiàn)無(wú)刷新監(jiān)聽(tīng)URL的變化示例代碼詳解
這篇文章主要介紹了js如何無(wú)刷新監(jiān)聽(tīng)URL的變化,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06JS實(shí)現(xiàn)簡(jiǎn)易留言板(節(jié)點(diǎn)操作)
這篇文章主要為大家詳細(xì)介紹了JS實(shí)現(xiàn)簡(jiǎn)易留言板,節(jié)點(diǎn)進(jìn)行操作,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-03-03Js日期選擇自動(dòng)填充到輸入框(界面漂亮兼容火狐)
本文為大家寫(xiě)了個(gè)很漂亮、兼容火狐的Js日期選擇,自動(dòng)填充到輸入框,代碼如下,有需要的朋友可以參考下2013-08-08