javascript截图 jQuery插件imgAreaSelect使用详解


Posted in Javascript onMay 04, 2016

为了使用户能自定义个人头像,需要提供一个对上传图片的截图功能,当前很多网站特别是SNS类网站都提供这样的功能,非常实用。主要实现的形式有两种,一种是flash截图,另一种就是javascript截图,两种方法各有秋千,关于Flash截图可以参考一下UcHome程序中头像上传功能,但这不是我要讨论的话题,我这里主要是如何实现javascript截图,利用jQuery的imgAreaSelect插件,轻松实现自定义头像[avatar]javascript截图功能。

一,准备:
两个JS文件
1,jquery.js 下载:jquery.js
2,jquery.imgareaselect.js 下载:jquery.imgareaselect.js[imgareaselect-0.6.2.zip]

二,使用

function preview(img, selection){ 
var scaleX = 100 / selection.width; 
var scaleY = 100 / selection.height;

//动态小头像 获取当前选中框的宽度,高度,左边框,右边框

$('#biuuu + div > img').css({ 
width: Math.round(scaleX * 400) + 'px', 
height: Math.round(scaleY * 300) + 'px', 
marginLeft: '-' + Math.round(scaleX * selection.x1) + 'px', 
marginTop: '-' + Math.round(scaleY * selection.y1) + 'px' 
}); 
}


//加载小头像

$(document).ready(function () { 
$('<div><img src="biuuu.jpg" style="position: relative;" /></div>') 
.css({ 
float: 'left', 
position: 'relative', 
overflow: 'hidden', 
width: '100px', 
height: '100px' 
}) 
.insertAfter($('#biuuu')); 
});

//初始化加载

$(window).load(function () { 
$('#biuuu').imgAreaSelect({ aspectRatio: '1:1', onSelectChange: preview }); 
});

三,调用

<div class="container"> 
<p> 
<img id="biuuu" src="biuuu.jpg" title="biuuu" style="float: left; margin-right: 10px;" /> 
</p> 
</div>

使用上面的javascript截图进行扩展可以实现很多的动态功能,jQuery提供的imgAreaSelect插件调用非常简单,其它相关应用可参考:imgAreaSelect Examples

使用jQuery插件imgAreaSelect实现javascript截图还是非常简单的,基本上就是一个动态的图像显示,获取源图片的位置和选取框的大小[宽度和高度],轻松实现javascript截图功能。

Javascript 相关文章推荐
pjblog修改技巧汇总
Mar 12 Javascript
document.open() 与 document.write()的区别
Aug 13 Javascript
js jquery获取随机生成id的服务器控件的三种方法
Jul 11 Javascript
iframe里的页面禁止右键事件的方法
Jun 10 Javascript
JavaScript设计模式之代理模式介绍
Dec 28 Javascript
JavaScript使用cookie实现记住账号密码功能
Apr 27 Javascript
javascript 中的事件委托详解
Oct 25 Javascript
Vue.js事件处理器与表单控件绑定详解
Mar 20 Javascript
jquery实现简单实用的轮播器
May 23 jQuery
Node.js 基础教程之全局对象
Aug 06 Javascript
微信web端后退强制刷新功能的实现代码
Mar 04 Javascript
微信小程序页面滚动到指定位置代码实例
Sep 07 Javascript
js编写当天简单日历效果【实现代码】
May 03 #Javascript
javascript实现下雪效果【实例代码】
May 03 #Javascript
vueJS简单的点击显示与隐藏的效果【实现代码】
May 03 #Javascript
javascript的列表切换【实现代码】
May 03 #Javascript
jQuery中队列queue()函数的实例教程
May 03 #Javascript
JavaScript中split与join函数的进阶使用技巧
May 03 #Javascript
总结JavaScript三种数据存储方式之间的区别
May 03 #Javascript
You might like
基于mysql的论坛(5)
2006/10/09 PHP
投票管理程序
2006/10/09 PHP
php 动态添加记录
2009/03/10 PHP
THINKPHP+JS实现缩放图片式截图的实现
2010/03/07 PHP
javascript 解析后的xml对象的读取方法细解
2009/07/25 Javascript
javascript学习笔记(二) js一些基本概念
2012/06/18 Javascript
js实现div弹出层的方法
2014/11/20 Javascript
jquery隔行换色效果实现方法
2015/01/15 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
Ajax+FormData+javascript实现无刷新表单信息提交
2016/10/24 Javascript
微信小程序 122100版本更新问题解决方案
2016/12/22 Javascript
vue之浏览器存储方法封装实例
2018/03/15 Javascript
[07:09]2014DOTA2国际邀请赛-Newbee再次发威成功晋级决赛
2014/07/19 DOTA
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
[56:42]完美世界DOTA2联赛循环赛 Matador vs Forest 第二场 11.06
2020/11/06 DOTA
python使用opencv驱动摄像头的方法
2018/08/03 Python
python实现词法分析器
2019/01/31 Python
python微信聊天机器人改进版(定时或触发抓取天气预报、励志语录等,向好友推送)
2019/04/25 Python
python从zip中删除指定后缀文件(推荐)
2019/12/05 Python
Python安装OpenCV的示例代码
2020/03/05 Python
Python yield的用法实例分析
2020/03/06 Python
Python3读取和写入excel表格数据的示例代码
2020/06/09 Python
什么是CSS3 HSLA色彩模式?HSLA模拟渐变色条
2016/04/26 HTML / CSS
Jogun Shop中文官网:韩国知名时尚男装网站
2016/10/12 全球购物
时尚、社区、科技:SEVENSTORE
2019/04/26 全球购物
P D PAOLA意大利官网:西班牙著名的珠宝首饰品牌
2019/09/24 全球购物
Timberland德国官网:靴子、鞋子、衣服、夹克及配件
2019/12/10 全球购物
音乐表演专业毕业生求职信
2013/10/14 职场文书
农民入党思想汇报
2014/01/03 职场文书
承诺书样本
2014/08/30 职场文书
2014年人事行政工作总结
2014/12/03 职场文书
预备党员转正材料
2014/12/19 职场文书
100句人生哲理语录集锦:强者征服今天,懒汉坐等明天
2019/10/18 职场文书
Redis6.0搭建集群Redis-cluster的方法
2021/05/08 Redis
React forwardRef的使用方法及注意点
2021/06/13 Javascript
利用Python实现翻译HTML中的文本字符串
2022/06/21 Python