当前位置:首页 > JavaScript

js实现画框

2026-03-15 08:54:25JavaScript

使用Canvas绘制矩形框

在HTML中创建Canvas元素,通过JavaScript获取上下文并绘制矩形:

<canvas id="myCanvas" width="400" height="300"></canvas>
const canvas = document.getElementById('myCanvas');
const ctx = canvas.getContext('2d');

// 设置边框样式
ctx.strokeStyle = 'red';
ctx.lineWidth = 3;

// 绘制矩形框
ctx.strokeRect(50, 50, 300, 200);

使用CSS border属性创建视觉框

通过纯CSS方式快速创建带边框的元素:

<div class="box-frame"></div>
.box-frame {
  width: 300px;
  height: 200px;
  border: 2px dashed #3498db;
  border-radius: 8px;
  padding: 20px;
  background-color: #f8f9fa;
}

SVG实现矢量框

使用SVG创建可缩放的矢量图形框:

<svg width="400" height="300">
  <rect x="50" y="50" 
        width="300" height="200"
        stroke="#2ecc71"
        stroke-width="4"
        fill="none"
        rx="10" />
</svg>

动态交互式画框实现

结合鼠标事件实现动态绘制:

const canvas = document.getElementById('interactiveCanvas');
const ctx = canvas.getContext('2d');
let isDrawing = false;
let startX, startY;

canvas.addEventListener('mousedown', (e) => {
  isDrawing = true;
  startX = e.offsetX;
  startY = e.offsetY;
});

canvas.addEventListener('mousemove', (e) => {
  if (!isDrawing) return;

  ctx.clearRect(0, 0, canvas.width, canvas.height);
  ctx.strokeStyle = 'purple';
  ctx.lineWidth = 2;

  const width = e.offsetX - startX;
  const height = e.offsetY - startY;

  ctx.strokeRect(startX, startY, width, height);
});

canvas.addEventListener('mouseup', () => {
  isDrawing = false;
});

带阴影效果的高级画框

实现带有阴影和渐变效果的框:

js实现画框

const canvas = document.getElementById('fancyCanvas');
const ctx = canvas.getContext('2d');

ctx.shadowColor = 'rgba(0,0,0,0.5)';
ctx.shadowBlur = 10;
ctx.shadowOffsetX = 5;
ctx.shadowOffsetY = 5;

const gradient = ctx.createLinearGradient(0, 0, 400, 0);
gradient.addColorStop(0, '#ff7e5f');
gradient.addColorStop(1, '#feb47b');

ctx.strokeStyle = gradient;
ctx.lineWidth = 8;
ctx.lineJoin = 'round';

ctx.strokeRect(50, 50, 300, 200);

标签: 画框js
分享给朋友:

相关文章

js实现轮播图

js实现轮播图

基础轮播图实现 使用HTML、CSS和JavaScript实现一个简单的自动轮播图。HTML结构包含一个容器和多个图片项。 <div class="slider"> <div…

js实现计算器

js实现计算器

实现基础计算器功能 使用JavaScript创建一个基础计算器需要处理数字输入、运算符逻辑和结果显示。以下是一个简单的实现示例: let currentInput = '0'; let previo…

js实现打印

js实现打印

使用window.print()方法实现打印 在JavaScript中,可以通过调用window.print()方法直接触发浏览器的打印功能。这会打开系统的打印对话框,用户可以选择打印机和设置打印选项…

js实现报表

js实现报表

使用JavaScript实现报表 在JavaScript中实现报表功能可以通过多种方式完成,常见的方法包括使用原生JavaScript、第三方库(如Chart.js、D3.js)或结合后端数据渲染。以…

js类实现

js类实现

使用类实现 JavaScript 功能 在 JavaScript 中,类(Class)是一种语法糖,基于原型继承机制。通过 class 关键字可以更直观地定义对象模板。 基本类定义 class…

js实现防洪

js实现防洪

防抖(Debounce)实现 防抖的核心思想是在事件触发后延迟执行回调函数,若在延迟时间内再次触发事件,则重新计时。适用于输入框搜索、窗口调整等场景。 function debounce(func,…