- 浏览: 7935438 次
- 性别:
- 来自: 广州
文章分类
- 全部博客 (2425)
- 软件工程 (75)
- JAVA相关 (662)
- ajax/web相关 (351)
- 数据库相关/oracle (218)
- PHP (147)
- UNIX/LINUX/FREEBSD/solaris (118)
- 音乐探讨 (1)
- 闲话 (11)
- 网络安全等 (21)
- .NET (153)
- ROR和GOG (10)
- [网站分类]4.其他技术区 (181)
- 算法等 (7)
- [随笔分类]SOA (8)
- 收藏区 (71)
- 金融证券 (4)
- [网站分类]5.企业信息化 (3)
- c&c++学习 (1)
- 读书区 (11)
- 其它 (10)
- 收藏夹 (1)
- 设计模式 (1)
- FLEX (14)
- Android (98)
- 软件工程心理学系列 (4)
- HTML5 (6)
- C/C++ (0)
- 数据结构 (0)
- 书评 (3)
- python (17)
- NOSQL (10)
- MYSQL (85)
- java之各类测试 (18)
- nodejs (1)
- JAVA (1)
- neo4j (3)
- VUE (4)
- docker相关 (1)
最新评论
-
xiaobadi:
jacky~~~~~~~~~
推荐两个不错的mybatis GUI生成工具 -
masuweng:
(转)JAVA获得机器码的实现 -
albert0707:
有些扩展名为null
java 7中可以判断文件的contenttype了 -
albert0707:
非常感谢!!!!!!!!!
java 7中可以判断文件的contenttype了 -
zhangle:
https://zhuban.me竹板共享 - 高效便捷的文档 ...
一个不错的网络白板工具
看到老外做HTML5的越来越多了,今天看到一个其中用HTML5做的效果不错,
是在canvas上画的圈,做放大器,并且监视了鼠标的相关事件,代码如下:
HTML部分
CSS部分:
script.js
是在canvas上画的圈,做放大器,并且监视了鼠标的相关事件,代码如下:
HTML部分
<!DOCTYPE html> <html lang="en" > <head> <meta charset="utf-8" /> <title>HTML5 canvas - Image zoomer | Script Tutorials</title> <link href="css/main.css" rel="stylesheet" type="text/css" /> <script type="text/javascript" src="js/jquery-1.5.2.min.js"></script> <script type="text/javascript" src="js/script.js"></script> </head> <body> <div class="container"> <canvas id="panel" width="800" height="533"></canvas> </div> <footer> <h2>HTML5 canvas - Image zoomer</h2> [url=http://www.script-tutorials.com/html5-canvas-image-zoomer/]Back to original tutorial on <span>Script Tutorials</span>[/url] </footer> </body> </html>
CSS部分:
*{ margin:0; padding:0; } body { background-color:#bababa; color:#fff; font:14px/1.3 Arial,sans-serif; } footer { background-color:#212121; bottom:0; box-shadow: 0 -1px 2px #111111; display:block; height:70px; left:0; position:fixed; width:100%; z-index:100; } footer h2{ font-size:22px; font-weight:normal; left:50%; margin-left:-400px; padding:22px 0; position:absolute; width:540px; } footer a.stuts,a.stuts:visited{ border:none; text-decoration:none; color:#fcfcfc; font-size:14px; left:50%; line-height:31px; margin:23px 0 0 110px; position:absolute; top:0; } footer .stuts span { font-size:22px; font-weight:bold; margin-left:5px; } .container { color:#000; margin:20px auto; position:relative; width:800px; } #panel { border:1px #000 solid; box-shadow:4px 6px 6px #444444; cursor:crosshair; }
script.js
// variables var canvas, ctx; var image; var iMouseX, iMouseY = 1; var bMouseDown = false; var iZoomRadius = 100; var iZoomPower = 2; // drawing functions function clear() { // clear canvas function ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height); } function drawScene() { // main drawScene function clear(); // clear canvas if (bMouseDown) { // drawing zoom area ctx.drawImage(image, 0 - iMouseX * (iZoomPower - 1), 0 - iMouseY * (iZoomPower - 1), ctx.canvas.width * iZoomPower, ctx.canvas.height * iZoomPower); ctx.globalCompositeOperation = 'destination-atop'; var oGrd = ctx.createRadialGradient(iMouseX, iMouseY, 0, iMouseX, iMouseY, iZoomRadius); oGrd.addColorStop(0.8, "rgba(0, 0, 0, 1.0)"); oGrd.addColorStop(1.0, "rgba(0, 0, 0, 0.1)"); ctx.fillStyle = oGrd; ctx.beginPath(); ctx.arc(iMouseX, iMouseY, iZoomRadius, 0, Math.PI*2, true); ctx.closePath(); ctx.fill(); } // draw source image ctx.drawImage(image, 0, 0, ctx.canvas.width, ctx.canvas.height); } $(function(){ // loading source image image = new Image(); image.onload = function () { } image.src = 'images/image.jpg'; // creating canvas object canvas = document.getElementById('panel'); ctx = canvas.getContext('2d'); $('#panel').mousemove(function(e) { // mouse move handler var canvasOffset = $(canvas).offset(); iMouseX = Math.floor(e.pageX - canvasOffset.left); iMouseY = Math.floor(e.pageY - canvasOffset.top); }); $('#panel').mousedown(function(e) { // binding mousedown event bMouseDown = true; }); $('#panel').mouseup(function(e) { // binding mouseup event bMouseDown = false; }); setInterval(drawScene, 30); // loop drawScene }); 一个在线效果在: http://www.script-tutorials.com/demos/167/index.html 要用chrome,firefox,safri等浏览器看
发表评论
-
微信开发工具中时间问题的小坑
2018-02-07 19:07 816刚开始用微信小程序开发工具,每次运行任何应用,都报这个错误: ... -
三篇不错的介绍CSS GRID的文章
2017-12-06 09:08 529三篇不错的介绍CSS GRID的文章: http://www. ... -
双因素认证(2FA)教程
2017-11-03 09:16 1570http://www.ruanyifeng.com/blog/ ... -
es6 中的export
2017-08-20 08:00 814https://juejin.im/post/5998625f ... -
markdown中的空格
2017-08-20 07:53 1694即使手动输入空格, 也是很不推荐的方法。我推荐全角空格,切换 ... -
(转)讲真,别再使用JWT了
2017-08-17 23:21 1006不错的好文: http://insights.thoughtw ... -
(转)手把手教你WebStorm+chrome实现时时调试刷新
2017-08-15 10:50 3019参考: http://jingyan.baidu.com/ar ... -
IntelliJ Idea 2017 免费激活方法
2017-08-15 09:38 93111. 到网站 http://idea.lanyus.com/ ... -
前端框架这么多,该何去何从?
2017-08-04 07:17 644http://insights.thoughtworkers. ... -
记录一个HTML 5画拓扑图的商业公司
2017-07-18 19:56 844http://qunee.com/ DEMO:http:// ... -
vue 2例子学习收集
2017-07-16 11:46 9981 vue2.0手撸闲鱼App https://githu ... -
(收藏)虚拟DOM内部是如何工作的
2017-07-13 22:08 587虚拟DOM内部是如何工作的 https://segmentfa ... -
最近看到的几篇精彩JAVASCRIPT博客文章推荐
2017-07-11 07:10 561【深度长文】JavaScript数组所有API全解密 http ... -
jsonp 跨域原理:深入浅出 jsonp
2017-07-10 19:55 1426https://lzw.me/a/jsonp.html jso ... -
(转)深度长文-JavaScript数组所有API全解密
2017-07-08 19:59 816深度长文-JavaScript数组所有API全解密 http: ... -
(收藏)网页导出PDF的方案
2017-07-06 07:13 959(收藏)网页导出PDF的方案 https://yiqiwuli ... -
Chromium 新的弹窗机制以及 HTML 的 <dialog> 元素
2017-06-28 12:37 1144https://juejin.im/post/59525195 ... -
国内一个不错的大屏UI设计厂家
2017-06-03 19:43 3156http://www.lanlanwork.com/dp.ph ... -
canvas仿芝麻信用分仪表盘
2017-05-28 20:21 1584canvas仿芝麻信用分仪表盘 https://segment ... -
(转)CSS 变量教程
2017-05-10 21:12 572http://www.ruanyifeng.com/blog/ ...
相关推荐
"JS产品图片局部放大效果Html源码"就是一个典型的例子,它模拟了淘宝宝贝描述详情页中的图片查看功能,当用户鼠标悬停在图片上时,会出现一个放大镜效果,让用户可以更清晰地查看产品的细节。这种效果通过JavaScript...
总结起来,"js图片局部放大效果"是一种提高网页图片查看体验的技术,主要通过JavaScript监听鼠标事件,结合`canvas`进行图像处理来实现。了解并掌握这一技术,能为你的网页设计增添更多交互性和专业性。
当鼠标移动到大图上时,代码会触发一个预定义的放大效果,通常会显示一个覆盖在大图上的放大镜效果,让用户看到图片的局部放大视图。 实现这个功能需要掌握以下几个关键的JavaScript概念和技术: 1. **事件监听**...
"canvas实现放大镜"的功能,是电商网站、图片展示页面等常用的一种交互设计,它允许用户通过鼠标悬浮在图片上时,看到一个局部放大的效果,从而更清晰地查看细节。在这个过程中,主要涉及的技术点包括canvas的基本...
在JavaScript(简称JS)编程中,局部放大图片是一种常见的交互效果,它允许用户在鼠标悬停或点击图片时,以放大镜的形式查看图片的细节。这个功能在网站展示产品细节或者图片密集型应用中非常常见,例如在线购物平台...
局部放大的核心原理是利用JavaScript、CSS或者HTML5的Canvas元素来创建一个可交互的放大镜效果。在HTML结构中,通常有两个图片元素,一个显示原始大小的图片,另一个用于放大后的局部视图。当鼠标悬停在原始图片上时...
HTML5 Canvas是一个强大的Web绘图接口,允许开发者在网页上直接用JavaScript绘制图形。这个"HTML5_canvas绘制动态树视图 类似结构图.rar"压缩包包含了一个利用Canvas实现的动态树形视图示例,它能帮助我们理解如何用...
这里我们关注的是两个实现这一效果的jQuery插件:一个是基础的html放大镜效果,另一个是名为Cloud Zoom的高级放大镜插件。 首先,我们来了解基础的html放大镜效果。这个效果通常是通过JavaScript和CSS来实现的。...
6. **创建放大图像**:利用JavaScript动态创建一个新的`<canvas>`元素,通过`CanvasRenderingContext2D`的`drawImage`方法,根据鼠标位置截取原图的局部并放大显示在放大镜视窗内。 7. **优化性能**:为了提高性能...
这个主题主要涉及到C#编程语言,因此我们将会深入探讨如何利用C#和ASP.NET来创建一个图像局部放大的功能。 首先,我们需要了解基本的图像处理概念。在.NET Framework中,System.Drawing命名空间提供了丰富的类来...
在本项目中,我们探讨的是一个利用HTML5和JavaScript实现的3D立体效果局部放大镜动画特效。这个特效主要用于提升用户的交互体验,特别是在展示产品细节或图像时,能够以一种引人注目的方式突出显示图像的特定部分。...
这种效果在电商网站上尤为常见,比如淘宝,用户可以通过鼠标悬停在商品图片上,看到图片的局部放大部分,从而更清晰地观察商品的细节。下面将详细解释这种效果的实现原理、技术栈以及相关的实现方法。 图片放大镜...
放大镜效果通常是通过在鼠标悬停处创建一个局部放大区域来实现的,这需要实时更新Canvas的某个小区域,以反映出鼠标下的放大效果。 4. 实现放大镜的步骤: - 监听鼠标移动事件(`mousemove`)。 - 当鼠标在Canvas上...
在JavaScript(JS)中处理图片放大、缩小和移动的功能,通常涉及到HTML5的Canvas元素以及鼠标事件处理。在这个场景下,用户希望实现鼠标滚轮滚动来控制图片的放大和缩小,而原有的功能是通过组合键(Shift + 鼠标...
4. 局部放大:当用户点击或选择图片的某一部分时,可以调用Canvas的局部放大部分,实现对选定区域的放大查看。 5. 下载功能:通过设置HTTP响应头,可以让用户直接从浏览器下载图片。同时,服务器端的JSP处理逻辑...
HTML5 Canvas是一个强大的Web图形API,它允许开发者在网页上进行动态、交互式的二维绘图。这个技术的引入,使得浏览器不再局限于简单的文本和图像展示,而是能够创建复杂的图形、动画甚至游戏。在这个主题中,我们将...
TJPzoom 是一个纯JavaScript实现的图片局部放大镜类库,它可以帮助开发者轻松地在网页上实现这种效果。本文将深入探讨TJPzoom 的工作原理、主要功能、使用方法以及相关知识点。 1. **工作原理** TJPzoom 的核心...
标题中的“通过javascript实现局部放大图”意味着我们将探讨如何使用JavaScript这一编程语言来创建一个功能,使得用户在网页上查看图片时,可以实现对图片某一部分的放大效果。这种效果通常用于电商网站的商品图片...
在局部图片放大的场景中,我们可以用CSS创建一个可隐藏和显示的放大镜区域,设置其透明度、边框和阴影效果,以达到更好的视觉效果。还可以利用CSS3的`transform`属性实现平滑的缩放动画,提升用户体验。 JavaScript...