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 相关文章推荐
javascript得到XML某节点的子节点个数的脚本
Oct 11 Javascript
javascript 嵌套的函数(作用域链)
Mar 15 Javascript
JQuery select标签操作代码段
May 16 Javascript
dojo学习第一天 Tab选项卡 实现
Aug 28 Javascript
2则自己编写的jQuery特效分享
Feb 26 Javascript
js实现固定显示区域内自动缩放图片的方法
Jul 18 Javascript
原生 JS Ajax,GET和POST 请求实例代码
Jun 08 Javascript
原生js验证简洁注册登录页面
Dec 17 Javascript
node打造微信个人号机器人的方法示例
Apr 26 Javascript
JS实现扫码枪扫描二维码功能
Jan 03 Javascript
浅谈vue中$event理解和框架中在包含默认值外传参
Aug 07 Javascript
Angular CLI发布路径的配置项浅析
Mar 29 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
让PHP支持页面回退的两种方法[转]
2007/02/14 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
2017/05/12 PHP
PHP操作Redis常用技巧总结
2018/04/24 PHP
JavaScript 对象模型 执行模型
2009/12/06 Javascript
jQuery 动态酷效果实现总结
2009/12/27 Javascript
Javascript 网页黑白效果实现代码(兼容IE/FF等)
2010/04/23 Javascript
Jquery easyui 下loaing效果示例代码
2013/08/12 Javascript
js使用心得分享
2015/01/13 Javascript
Javascript递归打印Document层次关系实例分析
2015/05/15 Javascript
js+html5绘制图片到canvas的方法
2015/06/05 Javascript
Bootstrap按钮下拉菜单组件详解
2016/05/10 Javascript
jQuery实现对无序列表的排序功能(附demo源码下载)
2016/06/25 Javascript
微信小程序实现打卡日历功能
2020/09/21 Javascript
Vue程序调试的方法
2019/06/17 Javascript
[07:20]2014DOTA2西雅图国际邀请赛 选手讲解积分赛第二天
2014/07/11 DOTA
python连接mysql调用存储过程示例
2014/03/05 Python
python多重继承实例
2014/10/11 Python
Python描述器descriptor详解
2015/02/03 Python
Python写的Tkinter程序屏幕居中方法
2015/03/10 Python
用Python代码来解图片迷宫的方法整理
2015/04/02 Python
PyCharm代码提示忽略大小写设置方法
2018/10/28 Python
python threading和multiprocessing模块基本用法实例分析
2019/07/25 Python
使用 Django Highcharts 实现数据可视化过程解析
2019/07/31 Python
Python3批量移动指定文件到指定文件夹方法示例
2019/09/02 Python
python实现画出e指数函数的图像
2019/11/21 Python
python函数不定长参数使用方法解析
2019/12/14 Python
amaze ui 的使用详细教程
2020/08/19 HTML / CSS
亚历山大·王官网:Alexander Wang
2017/06/23 全球购物
购买原创艺术品:Zatista
2019/11/09 全球购物
教师远程培训感言
2014/03/06 职场文书
实习单位评语
2014/04/26 职场文书
大学生学习新党章思想汇报
2014/10/25 职场文书
入党自荐书范文
2015/03/05 职场文书
小学语文教学随笔
2015/08/14 职场文书
《最终幻想14》6.01版本4月5日推出 追加新任务新道具
2022/04/03 其他游戏