js實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊飄愛(ài)心效果
本文實(shí)例為大家分享了js實(shí)現(xiàn)鼠標(biāo)點(diǎn)擊飄愛(ài)心的具體代碼,供大家參考,具體內(nèi)容如下
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>鼠標(biāo)點(diǎn)擊特效</title>
<link rel="stylesheet" >
<style>
html {
cursor: pointer;
}
h3 {
text-align: center;
user-select: none;
}
.div-box {
width: 30px;
height: 30px;
font-size: 30px;
position: absolute;
}
</style>
</head>
<body>
<h3>請(qǐng)點(diǎn)擊屏幕查看效果</h3>
<script>
window.onclick = function (e) {
//存儲(chǔ)需要的顏色
let arr = ["red", "yellow", "green", "pink", "blue", "purple", "orangered"];
//隨機(jī)產(chǎn)生一個(gè)顏色
let heartNum = Math.floor(Math.random() * arr.length);
let div = document.createElement("div");
div.setAttribute("class", "iconfont iconzan div-box");
div.style.color = arr[heartNum];
document.body.appendChild(div);
//獲得鼠標(biāo)的x,y軸的位置,并減去自身寬高的一半,使其能夠在愛(ài)心的正中心
let x = e.pageX - div.offsetWidth / 2;
let y = e.pageY - div.offsetHeight / 2;
div.style.left = x + "px";
div.style.top = y + "px";
//獲得0-1的整數(shù)
let num = Math.round(Math.random());
let timer = setInterval(() => {
y -= 10;
if (num === 0) x -= 10;
else x += 10;
div.style.left = x + "px";
div.style.top = y + "px";
//如果超出屏幕范圍,則刪除此節(jié)點(diǎn)
if (y < -100) {
clearInterval(timer);
div.remove();
}
}, 100);
}
</script>
</body>
</html>
效果圖如下

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
基于HTML5+JS實(shí)現(xiàn)本地圖片裁剪并上傳功能
這篇文章主要為大家詳細(xì)介紹了HTML5本地圖片裁剪并上傳的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
關(guān)于JS模塊化的知識(shí)點(diǎn)分享
在本篇文章里小編給大家整理的是關(guān)于JS模塊化的知識(shí)點(diǎn)分享,有需要的朋友們可以學(xué)習(xí)下。2019-10-10
layUI使用layer.open,在content打開(kāi)數(shù)據(jù)表格,獲取值并返回的方法
今天小編就為大家分享一篇layUI使用layer.open,在content打開(kāi)數(shù)據(jù)表格,獲取值并返回的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
JS實(shí)現(xiàn)往下不斷流動(dòng)網(wǎng)頁(yè)背景的方法
這篇文章主要介紹了JS實(shí)現(xiàn)往下不斷流動(dòng)網(wǎng)頁(yè)背景的方法,實(shí)例分析了遞歸調(diào)用自定義函數(shù)scrollBG實(shí)現(xiàn)動(dòng)態(tài)背景特效的功能,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-02-02
javascript對(duì)象的property和prototype是這樣一種關(guān)系
javascript對(duì)象的property和prototype是這樣一種關(guān)系...2007-03-03
JavaScript日期時(shí)間格式化函數(shù)分享
這篇文章主要介紹了JavaScript日期時(shí)間格式化函數(shù)分享,需要的朋友可以參考下2014-05-05
詳解JavaScript到TypeScript的轉(zhuǎn)換過(guò)程
JavaScript是一門強(qiáng)大而靈活的編程語(yǔ)言,TypeScript作為JavaScript的超集,為開(kāi)發(fā)人員提供了靜態(tài)類型檢查、更好的協(xié)作能力和面向?qū)ο缶幊痰闹С?,本文將詳?xì)講解如何將JavaScript代碼轉(zhuǎn)換為TypeScript,并寫一些代碼示例參考2023-06-06
javascript 具名函數(shù)的四種調(diào)用方式 推薦
看四種方式執(zhí)行結(jié)果沒(méi)有區(qū)別。但如果函數(shù)有返回值的話,用new方式調(diào)用時(shí)可能會(huì)讓你有些失望。2009-07-07

