JavaScript实现随机星星背景特效代码详解
作者:纸飞机时间:2026-10-29 21:02:26浏览:660
本文介绍如何使用JavaScript实现网页随机星星背景特效。通过设置黑色背景,利用定时器周期性创建不同大小的星星元素,并计算随机坐标范围。点击星星可触发移除事件,实现交互效果。
随机星星特效实现逻辑
以下示例展示了利用JavaScript编写随机星星动画效果的完整实现方案,具体逻辑如下所述。
- 首先,将网页背景颜色设置为黑色。
- 其次,控制星星的尺寸随机生成,其最小值为15,最大值为80。
- 第三,星星在页面中的位置坐标需随机分布:
- 水平方向上,左边界x_left设为0,右边界x_right等于浏览器窗口宽度减去星星宽度。
- 垂直方向上,上边界y_top设为0,下边界y_bottom需根据窗口高度动态确定。
- 第四,添加交互逻辑:当用户点击某个星星时,该星星元素从页面中移除并消失。
- 第五,在网页加载完成后,立即启动星星显示逻辑。
- 第六,使用定时器机制:每隔一个固定周期,向页面插入一个新的星星元素。
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<script type="text/javascript">
//定义全局变量
var img_width_min = 15;
var img_width_max = 80;
var x_left = 0;
var x_right = 0;
var y_top = 0;
var y_bottom = 0;
//定义初始化的函数
function init()
{
document.body.bgColor = "#000";
x_right = window.innerWidth - img_width_max;
y_bottom = window.innerHeight - img_width_max;
//定时器
setInterval("showStar()",1000);
}
//显示星星
function showStar()
{
//创建一个图片
var node_img = document.createElement("img");
//随机图片大小和随机坐标
var width = getRandom(img_width_min,img_width_max);
var x = getRandom(x_left,x_right);
var y = getRandom(y_top,y_bottom);
//增加src的属性
node_img.setAttribute("src","images/xingxing.gif");
//增加style属性
var style = "position:absolute;left:"+x+"px;top:"+y+"px;";
style += "width:"+width+"px;";
node_img.setAttribute("style",style);
//增加一个onclick事件属性
node_img.setAttribute("onclick","removeImg(this)");
//将图片追加到<body>元素下
document.body.appendChild(node_img);
}
function removeImg(obj)
{
document.body.removeChild(obj);
}
function getRandom(min,max)
{
return Math.floor(Math.random()*(max-min)+min);
}
</script>
</head>
<body onload="init()">
</body>
</html>
希望上述关于JavaScript程序设计的说明能为您提供参考与帮助。
作者最新文章
JS动态构建复杂嵌套JSON对象的方法
2026-11-05 15:41:52
JS负数取余为什么是负数?详解余数与模运算区别
2026-11-05 13:34:41
JS 解压出现乱码或报错怎么解决?
2026-11-05 12:32:38
JS 中 startsWith、indexOf 与正则判断字符串前缀的对比
2026-11-04 22:19:43
JS解析Excel后怎么将数据转换为JSON格式
2026-11-04 20:58:28
