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 相关文章推荐
网页前端优化之滚动延时加载图片示例
Jul 13 Javascript
javascript:void(0)的作用示例介绍
Oct 28 Javascript
Javascript与jQuery方法的隐藏与显示
Jan 19 Javascript
JavaScript实现更改网页背景与字体颜色的方法
Feb 02 Javascript
用JavaScript判断CSS浏览器类型前缀的两种方法
Oct 08 Javascript
javascript给span标签赋值的方法
Nov 26 Javascript
基于Node.js实现nodemailer邮件发送
Jan 26 Javascript
JavaScript使用简单正则表达式的数据验证功能示例
Jan 13 Javascript
Angular.js通过自定义指令directive实现滑块滑动效果
Oct 13 Javascript
基于Require.js使用方法(总结)
Oct 26 Javascript
Vuejs 实现简易 todoList 功能 与 组件实例代码
Sep 10 Javascript
ant design pro中可控的筛选和排序实例
Nov 17 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
THINKPHP内容分页代码分享
2015/01/14 PHP
使用Appcan客户端自动更新PHP版本号(全)
2015/07/31 PHP
php简单实现多语言切换的方法
2016/05/09 PHP
php实现购物车产品删除功能(2)
2020/07/23 PHP
网页前端优化之滚动延时加载图片示例
2013/07/13 Javascript
Javascript中3种实现继承的方法和代码实例
2014/08/12 Javascript
轻松实现JavaScript图片切换
2016/01/12 Javascript
微信小程序 实现拖拽事件监听实例详解
2016/11/16 Javascript
详解AngularJS验证、过滤器、指令
2017/01/04 Javascript
详解微信小程序-扫一扫 wx.scanCode() 扫码大变身
2019/04/30 Javascript
解决vue单页面修改样式无法覆盖问题
2019/08/05 Javascript
JavaScript Dom 绑定事件操作实例详解
2019/10/02 Javascript
Python之re操作方法(详解)
2017/06/14 Python
Django查询数据库的性能优化示例代码
2017/09/24 Python
Python内存管理方式和垃圾回收算法解析
2017/11/11 Python
可能是最全面的 Python 字符串拼接总结【收藏】
2018/07/09 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
Python随机数函数代码实例解析
2020/02/09 Python
Python新手如何理解循环加载模块
2020/05/29 Python
详解python的xlwings库读写excel操作总结
2021/02/26 Python
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
乐高官方旗舰店:LEGO积木玩具
2019/04/06 全球购物
EJB2和EJB3在架构上的不同点
2014/09/29 面试题
机械系大学毕业生推荐信
2013/11/27 职场文书
技术人员面试提纲
2013/11/28 职场文书
预备党员转正思想汇报
2014/01/12 职场文书
给分销商的致歉信
2014/01/14 职场文书
四群教育工作实施方案
2014/03/26 职场文书
公休请假条
2014/04/11 职场文书
《赠汪伦》教学反思
2014/04/12 职场文书
啤酒节策划方案
2014/05/28 职场文书
幼儿园庆六一主持词
2015/06/30 职场文书
2016年“七一建党节”广播稿
2015/12/18 职场文书
Pytorch中的数据集划分&正则化方法
2021/05/27 Python
Mysql分库分表之后主键处理的几种方法
2022/02/15 MySQL
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏