JavaScript实现鼠标点击冒泡特效
作者:拾光时间:2026-10-23 14:05:58浏览:595
本文分享一段使用JavaScript编写的鼠标点击冒泡特效代码。当用户点击鼠标左键时,页面会在点击位置生成红心或表情符号,并向上浮动消失。代码包含核心逻辑与完整实现,支持自定义表情替换,并提供GitHub源码地址供参考下载。
JavaScript鼠标点击冒泡特效实现
本文分享一段使用JavaScript编写的鼠标点击冒泡特效代码,供开发者参考。
这是一个基于JavaScript实现的鼠标左键点击交互效果。
在页面任意位置点击鼠标左键,即可在点击处生成红心“❤”或特定的字符表情“(๑•́ ₃ •̀๑)”等动画元素。
开发过程中可使用常用的Emoji表情作为素材。
用户可根据需求自行替换表情内容,如需获取完整源码,请通过底部链接访问GitHub仓库。

以下是实现该特效的核心代码部分。
onload = function() {
var click_cnt = 0;
var $html = document.getElementsByTagName("html")[0];
var $body = document.getElementsByTagName("body")[0];
$html.onclick = function(e) {
var $elem = document.createElement("b");
$elem.style.color = "#E94F06";
$elem.style.zIndex = 9999;
$elem.style.position = "absolute";
$elem.style.select = "none";
var x = e.pageX;
var y = e.pageY;
$elem.style.left = (x - 10) + "px";
$elem.style.top = (y - 20) + "px";
clearInterval(anim);
switch (++click_cnt) {
case 10:
$elem.innerText = "OωO";
break;
case 20:
$elem.innerText = "(๑•́ ∀ •̀๑)";
break;
case 30:
$elem.innerText = "(๑•́ ₃ •̀๑)";
break;
case 40:
$elem.innerText = "(๑•̀_•́๑)";
break;
case 50:
$elem.innerText = "( ̄へ ̄)";
break;
case 60:
$elem.innerText = "(╯°口°)╯(┴—┴";
break;
case 70:
$elem.innerText = "૮( ᵒ̌皿ᵒ̌ )ა";
break;
case 80:
$elem.innerText = "╮(。>口<。)╭";
break;
case 90:
$elem.innerText = "( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃";
break;
case 100:
case 101:
case 102:
case 103:
case 104:
case 105:
$elem.innerText = "(ꐦ°᷄д°᷅)";
break;
default:
$elem.innerText = "❤";
break;
}
$elem.style.fontSize = Math.random() * 10 + 8 + "px";
var increase = 0;
var anim;
setTimeout(function() {
anim = setInterval(function() {
if (++increase == 150) {
clearInterval(anim);
$body.removeChild($elem);
}
$elem.style.top = y - 20 - increase + "px";
$elem.style.opacity = (150 - increase) / 120;
}, 8);
}, 70);
$body.appendChild($elem);
};
};
点击代码区域可预览实际运行效果。



完整项目源码已托管至Github,仓库名为JSClickBubble,方便开发者下载与二次开发。
本站还整理分享了更多JavaScript精彩特效,欢迎查阅。
包括各类JavaScript菜单特效的实现方案。
以及仿QQ风格的界面交互特效汇总。
此外还有JavaScript时钟特效的代码合集可供学习。
希望以上内容能对您的JavaScript学习与应用提供帮助,欢迎继续支持本站获取更多资源。
作者最新文章
JS处理含Emoji或中文的字符串转数组乱码问题
2026-11-05 16:12:28
JS怎么使用展开运算符合并对象
2026-11-05 14:42:18
ES6+环境下判断JS对象为空的简洁写法
2026-11-05 12:12:23
怎么通过replacer函数自定义JS中JSON的格式化输出
2026-11-05 11:19:44
JS正则表达式基础:字面量与RegExp构造函数的区别及常用元字符
2026-11-05 11:16:58
