jQuery 图像裁剪插件Jcrop的简单使用


Posted in Javascript onMay 22, 2009

同事推荐了Jcrop这个插件,到它的官方站点http://deepliquid.com/content/Jcrop.html下载了最新版的压缩包,压缩包中包括了Jcrop的几个demo文件,关键的Jcrop.js文件和jQuery.Jcrop.css文件。基本上来说参照它的几个demo文件就可以学会使用这个插件了。晚上正好学习研究了下,现简单总结如下,也方便下英文不好的朋友们。
使用插件必须条件:引入jQuery.js文件,引入jQuery.Jcrop.js文件,引入JQuery.Jcrop.css文件。
1.最基本使用方法
html代码部分:

<img src="demo_files/flowers.gif" id="demoImage"/>

js部分:
$( 
function() 
{ 
$("#demoImage").Jcrop(); 
} 
);

这样就可以在图片上进行裁剪了。
2.得到选中区域的坐标以及回调函数
html代码部分如下:
<img src="demo_files/flowers.jpg" id="demoImage" /> 
<label>x1</label><input type="text" id="txtX1" /> 
<label>y1</label><input type="text" id="txtY1" /> 
<label>x2</label><input type="text" id="txtX2" /> 
<label>y2</label><input type="text" id="txtY2" /> 
<label>width</label><input type="text" id="txtWidth" /> 
<label>height</label><input type="text" id="txtHeight" />

js代码部分如下: 
$( 
function() { 
//事件处理 
$("#demoImage").Jcrop( 
{ 
onChange:showCoords, //当选择区域变化的时候,执行对应的回调函数 
onSelect:showCoords //当选中区域的时候,执行对应的回调函数 
} 
); 
} 
); 
function showCoords(c) { 
$("#txtX1").val(c.x); //得到选中区域左上角横坐标 
$("#txtY1").val(c.y); //得到选中区域左上角纵坐标 
$("#txtX2").val(c.x2); //得到选中区域右下角横坐标 
$("#txtY2").val(c.y2); //得到选中区域右下角纵坐标 
$("#txtWidth").val(c.w); //得到选中区域的宽度 
$("#txtHeight").val(c.h); //得到选中区域的高度 
}

3.常用选项设置
aspectRatio:选中区域按宽/高比,为1表示正方形。
minSize:最小的宽,高值。
maxSize:最大的宽,高值。
setSelect:设置初始选中区域。
bgColor:背景颜色
bgOpacity:背景透明度。
allowResize:是否允许改变选中区域大小。
allowMove:是否允许移动选中区域。
举例如下: 
$( 
function() { 
$("#demoImage").Jcrop({ 
aspectRatio: 1, //选中区域宽高比为1,即选中区域为正方形 
bgColor:"#ccc", //裁剪时背景颜色设为灰色 
bgOpacity:0.1, //透明度设为0.1 
allowResize:false, //不允许改变选中区域的大小 
setSelect:[0,0,100,100] //初始化选中区域 
} 
); 
} 
);

4.api用法
var api = $.Jcrop("#demoImage"); 
api.disable(); //设置为禁用裁剪效果 
api.enable(); //设置为启用裁剪效果 
api.setOptions({allowResize:false});//设置相应配置 
api.setSelect([0,0,100,100]); //设置选中区域
Javascript 相关文章推荐
javascript一些实用技巧小结
Mar 18 Javascript
jQuery 源码分析笔记(3) Deferred机制
Jun 19 Javascript
javascript 控制input只允许输入的各种指定内容
Jun 19 Javascript
javascript实现密码强度显示
Mar 18 Javascript
jQuery实现按钮的点击 全选/反选 单选框/复选框 文本框 表单验证
Jun 25 Javascript
用js编写的简单的计算器代码程序
Aug 04 Javascript
jQuery基于muipicker实现仿ios时间选择
Feb 22 Javascript
使用 vue-i18n 切换中英文效果
May 23 Javascript
JavaScript检查数据中是否存在相同的元素(两种方法)
Oct 07 Javascript
解决使用layui对select append元素无效或者未及时更新的问题
Sep 18 Javascript
vue 父组件通过$refs获取子组件的值和方法详解
Nov 07 Javascript
js实现简单放大镜效果
Mar 07 Javascript
document.compatMode介绍
May 21 #Javascript
各种常用浏览器getBoundingClientRect的解析
May 21 #Javascript
简单的js分页脚本
May 21 #Javascript
input+select(multiple) 实现下拉框输入值
May 21 #Javascript
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
May 21 #Javascript
Javascript 兼容firefox的一些问题
May 21 #Javascript
鼠标经过的文本框textbox变色
May 21 #Javascript
You might like
PHP遍历二维数组的代码
2011/04/22 PHP
php全角字符转换为半角函数
2014/02/07 PHP
php+highchats生成动态统计图
2014/05/21 PHP
PHP中new static() 和 new self() 的区别介绍
2015/01/09 PHP
Laravel用户授权系统的使用方法示例
2018/09/16 PHP
jQuery ajax BUG:object doesn't support this property or method
2010/07/06 Javascript
jquery简单的拖动效果实现原理及示例
2013/07/26 Javascript
Node.js中使用事件发射器模式实现事件绑定详解
2014/08/15 Javascript
js用Date对象的setDate()函数对日期进行加减操作
2014/09/18 Javascript
node.js中的http.response.addTrailers方法使用说明
2014/12/14 Javascript
JQuery select(下拉框)操作方法汇总
2015/04/15 Javascript
JavaScript通过代码调用Flash显示的方法
2016/02/02 Javascript
Javascript获取统一管理的提示语(message)
2016/02/03 Javascript
Bootstrap Paginator分页插件使用方法详解
2016/05/30 Javascript
js操作DOM--添加、删除节点的简单实例
2016/07/08 Javascript
详解JavaScript时间处理之几个月前或几个月后的指定日期
2016/12/21 Javascript
神级程序员JavaScript300行代码搞定汉字转拼音
2017/05/20 Javascript
浅谈微信JS-SDK 微信分享接口开发(介绍版)
2018/08/15 Javascript
微信小程序页面间跳转传参方式总结
2019/06/13 Javascript
Python访问MySQL封装的常用类实例
2014/11/11 Python
学习python类方法与对象方法
2016/03/15 Python
windows下Python实现将pdf文件转化为png格式图片的方法
2017/07/21 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
使用pip发布Python程序的方法步骤
2018/10/11 Python
对pandas中两种数据类型Series和DataFrame的区别详解
2018/11/12 Python
python交换两个变量的值方法
2019/01/12 Python
学会python自动收发邮件 代替你问候女友
2020/05/20 Python
用python写爬虫简单吗
2020/07/28 Python
python3中布局背景颜色代码分析
2020/12/01 Python
可以随进度显示不同颜色的css3进度条分享
2014/04/11 HTML / CSS
美国在线印刷公司:PsPrint
2017/10/12 全球购物
李宁官方网店:中国运动品牌
2017/11/02 全球购物
效能监察建议书
2014/05/19 职场文书
2019年“我为祖国点赞”演讲稿(3篇)
2019/09/26 职场文书
oracle表分区的概念及操作
2021/04/24 Oracle
mybatis 获取更新记录的id
2022/05/20 Java/Android