jquery.picsign图片标注组件实例详解


Posted in jQuery onFebruary 02, 2018

经过几天的尝试和学习,封装了自己的第一个js组件,有很多不足之处还请赐教。

因为一些业务需求,需要给图片添加一些标注,从网上找了一些但都不能满足需求,并且存在一些bug,坑太多

因此就有想法自己封装一个,学习了其他类似组件的实现思路,以及js组件的开发思路,开发了jquery.picsign组件

jquery.picsign图片标注组件实例详解

jQuery图片标注组件(jquery.picsign)

在线演示:http://artlessbruin.gitee.io/picsign/

gitee:https://gitee.com/ArtlessBruin/PicSign

1. 组件依赖

jquery

<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>

bootstrap

<link href="https://cdn.bootcss.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet">
<script src="https://cdn.bootcss.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

layer

<link href="https://cdn.bootcss.com/layer/3.1.0/theme/default/layer.css" rel="stylesheet">
<script src="https://cdn.bootcss.com/layer/3.1.0/layer.js"></script>

webui-popover

<link href="https://cdn.bootcss.com/webui-popover/2.1.15/jquery.webui-popover.min.css" rel="stylesheet">
<script src="https://cdn.bootcss.com/webui-popover/2.1.15/jquery.webui-popover.min.js"></script>

2. 引用组件文件

<link href="css/jquery.picsign.css" rel="external nofollow" rel="stylesheet" />
<script src="js/jquery.picsign.js"></script>

3. 使用

在页面中加入一个DIV

<div id="picsign"></div>

初始化组件

$("#picsign").picsign(option);
//option为组件参数,详细说明见option参数说明

option参数说明

var option={
 picurl: null,//图片地址
 signdata: [],//初始数据,详细说明参见基本数据格式
 editable: {//是否可编辑(默认可编辑 设置为false则禁用所有编辑)
 add: true,//是否可添加
 update: true,//是否可修改
 del: true,//是否可删除
 move: true//是否可移动
 },
 signclass: 'signdot',//标注点样式
 popwidth: 400,//标注内容显示窗口宽
 popheight: 247,//标注内容显示窗口高
 inputwidth: 400,//标注内容编辑窗口宽
 inputheight: 247,//标注内容编辑窗口高
 beforeadd: function (data) {//在添加保存前执行的方法,返回false阻断添加
 },
 onadd: function (data) {//添加完成执行的方法
 },
 beforeupdate: function (data) {//在修改保存前执行的方法,返回false阻断修改
 },
 onupdate: function (data) {//修改完成执行的方法
 },
 beforedel: function (data) {//在删除保存前执行的方法,返回false阻断删除
 },
 ondel: function (data) {//删除完成执行的方法
 }
};

基本数据格式

[{
 left:'50%',
 top:'50%',
 msg:'这是标注信息',
 signid:'这是标注唯一标识符,用户无需赋值,与组件逻辑相关,请不要使用此关键字'
}]
  • 用户添加的数据中必须包含left、top、msg属性
  • 用户可自行扩展其他属性
  • 特殊说明:请不要添加和使用signid关键字

方法调用

$("#picsign").picsign('functionName',parameter);
//functionName为方法名称,parameter为方法参数,详细说明参见方法说明

方法说明

获取标注数据

方法名称:getData

参数:无

$("#picsign").picsign('getData');

添加标注数据

方法名称:addSign

参数:基本数据Json,是否触发事件(默认为true)

$("#div_picsign").picsign("addSign",
 [{ left: '50%', top: '10%', msg: "123"},
 { left: '80%', top: '10%', msg: "456"}],
 true
)

切换标注显示状态

方法名称:toggle

参数:无

$("#div_picsign").picsign("toggle")

组件销毁

方法名称:destroy

参数:无

$("#div_picsign").picsign("destroy")

总结

以上所述是小编给大家介绍的jquery.picsign图片标注组件实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

jQuery 相关文章推荐
jQuery 循环遍历改变a标签的href(实例讲解)
Jul 12 jQuery
jQuery菜单实例(全选,反选,取消)
Aug 28 jQuery
jQuery实现html双向绑定功能示例
Oct 09 jQuery
jQuery判断网页是否已经滚动到浏览器底部的实现方法
Oct 27 jQuery
360提示[高危]使用存在漏洞的JQuery版本的解决方法
Oct 27 jQuery
js与jQuery实现的用户注册协议倒计时功能实例【三种方法】
Nov 09 jQuery
jquery实现企业定位式导航效果
Jan 01 jQuery
jQuery实现标签子元素的添加和赋值方法
Feb 24 jQuery
jQuery点击页面其他部分隐藏下拉菜单功能
Nov 27 jQuery
jQuery实现网页拼图游戏
Apr 22 jQuery
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
Apr 28 jQuery
jquery validate 实现动态增加/删除验证规则操作示例
Oct 28 jQuery
jquery应用实例分享_实现手风琴特效
Feb 01 #jQuery
jQuery NProgress.js加载进度插件的简单使用方法
Jan 31 #jQuery
jQuery与vue实现拖动验证码功能
Jan 30 #jQuery
jquery动态添加以及遍历option并获取特定样式名称的option方法
Jan 29 #jQuery
jQuery代码优化方法总结
Jan 29 #jQuery
jquery写出PC端轮播图实例
Jan 26 #jQuery
jquery根据name取得select选中的值实例(超简单)
Jan 25 #jQuery
You might like
PHP实现阳历到农历转换的类实例
2015/03/07 PHP
学习php设计模式 php实现适配器模式
2015/12/07 PHP
PHP目录与文件操作技巧总结(创建,删除,遍历,读写,修改等)
2016/09/11 PHP
jquery创建并行对象或者合并对象的实现代码
2012/10/10 Javascript
Three.js源码阅读笔记(基础的核心Core对象)
2012/12/27 Javascript
改变隐藏的input中value的值代码
2013/12/30 Javascript
js实现图片拖动改变顺序附图
2014/05/13 Javascript
JavaScript中常见的字符串操作函数及用法汇总
2015/05/04 Javascript
JS简单实现String转Date的方法
2016/03/02 Javascript
js实现图片淡入淡出切换简易效果
2016/08/22 Javascript
vuex中使用对象展开运算符的示例
2017/09/25 Javascript
详解vue 实例方法和数据
2017/10/23 Javascript
js中apply与call简单用法详解
2017/11/06 Javascript
pm2发布node配置文件ecosystem.json详解
2019/05/15 Javascript
vue滚动tab跟随切换效果
2020/06/29 Javascript
Eclipse中Python开发环境搭建简单教程
2016/03/23 Python
解决python2.7用pip安装包时出现错误的问题
2017/01/23 Python
Python从ZabbixAPI获取信息及实现Zabbix-API 监控的方法
2018/09/17 Python
用Python实现读写锁的示例代码
2018/11/05 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
2019/06/03 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
django框架两个使用模板实例
2019/12/11 Python
在Python 的线程中运行协程的方法
2020/02/24 Python
python实现从ftp服务器下载文件
2020/03/03 Python
Python JSON常用编解码方法代码实例
2020/09/05 Python
用Python自动清理系统垃圾的实现
2021/01/18 Python
深入解析HTML5中的Blob对象的使用
2015/09/08 HTML / CSS
中专毕业生自我鉴定范文
2013/11/09 职场文书
大门门卫岗位职责
2013/11/30 职场文书
2014三八妇女节活动总结范文四篇
2014/03/09 职场文书
2014年高一班主任工作总结
2014/12/05 职场文书
监察建议书
2015/02/04 职场文书
工程合作意向书范本
2015/05/09 职场文书
总结会主持词
2015/07/02 职场文书
社区宣传标语口号
2015/12/26 职场文书
解决spring.thymeleaf.cache=false不起作用的问题
2022/06/10 Java/Android