JavaScript实现动态心型线绘制完整代码

作者:竹影

时间:2026-10-29

浏览:287

本文详细介绍如何使用JavaScript结合HTML5 Canvas技术绘制动态心型线。通过数学公式计算坐标点,利用循环绘制出红色爱心图案,并包含完整的HTML结构与CSS样式设置,适合前端开发者参考学习。

文章目录

JavaScript心型线绘制概述

本文通过一个完整的实例,详细解析了使用JavaScript绘制动态心型线的具体实现方法,旨在为读者提供可直接参考的代码方案。

最终的运行效果如截图所示,展示了在页面中渲染出的红色心型图案。

JavaScript心型线绘制概述

实现该效果的核心代码逻辑如下所示,主要涉及HTML结构搭建、CSS样式定位以及JavaScript绘图逻辑。

完整代码实现与解析


<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<title>JS心型线</title>
<style>
div{
  position:absolute;
}
.xx-box{
  left:50%;
  top:50%;
  margin-left:-250px;
  margin-top:-250px;
  width:500px;
  height:500px;
  background-color:#000;
}
.xx-box .text{
  top:30%;
  height:48px;
  line-height:48px;
  color:#f00;
  text-shadow: 3px 3px 4px #f00;
  font-size:36px;
  font-weight:bold;
  width:100%;
  text-align:center;
  font-family:Tangerine,Tahoma,Arial,"\65f6\5c1a\4e2d\9ed1\7b80\4f53","\5b8b\4f53";
}
.xx-box .item{
  width:2px;
  height:20px;
  overflow:hidden;
}
</style>
</head>
<body>
<div class="xx-box" id="xx-box">
  <div class="text">I Love You</div>
</div>
<script>
function createPoint(x,y,c){
  var div = document.createElement("div");
  div.className = "item";
  div.style.left = x + "px";
  div.style.top = y + "px";
  div.style.backgroundColor = c;
  document.getElementById("xx-box").appendChild(div);
}
function heartShape(r,dx,dy,c){//r:大小;dx:水平偏移;dy:垂直偏移;c:颜色
  var m,n,x,y,i;
  for(i = 0; i <= 200; i += 0.04){
    m = i;
    n = -r * (((Math.sin(i) * Math.sqrt(Math.abs(Math.cos(i)))) / (Math.sin(i) + 1.4)) - 2 * Math.sin(i) + 2);
    x = n * Math.cos(m) + dx;
    y = n * Math.sin(m) + dy;
    createPoint(x,y,c);
  }
}
heartShape(80,250,100,"#f00");
</script>
</body>
</html>

如需进一步了解JavaScript相关技术,建议查阅本站发布的《JavaScript动画特效与技巧汇总》、《javascript面向对象入门教程》以及《JavaScript数据结构与算法技巧总结》等专题文章。

希望上述关于JavaScript程序设计的分享能对各位读者在实际开发中有所帮助。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章