一款简单的jQuery图片标注效果附源码下载


Posted in Javascript onMarch 22, 2016

为了提高用户体验度,在一些电商网站和家居网站上我们会看到,一张图片中显示多种商品,点击每个商品可以弹出对应商品的简单介绍,包括价格等等,设计非常的人性化,今天我们通过实例给大家分享使用jQuery插件来实现这一效果。

先给大家展示下效果图:

一款简单的jQuery图片标注效果附源码下载

效果演示          源码下载

HTML

首先,我们加载jQuery库和easypin插件。

<script src="jquery.min.js"></script> 
<script src="jquery.easing.min.js"></script> 
<script src="jquery.easypin.min.js"></script>

接着,我们准备一张图片,这是一张展示多个模特服装鞋子包包内的电商图片,注意我们给图片一个easypin-id属性,它用来标记当前图片id,用来被后面插件调用。

<img src="fashion.jpg" class="pin" width="900" easypin-id="demo_image_1" />

我们还需要制作一个用于弹出显示商品信息的隐藏层,使用属性easypin-tpl来标记弹出层。标签popover是弹出层元素,标签marker是标注点元素。再配合CSS来让弹出层有一个漂亮的外观。

<div style="display:none;" easypin-tpl> 
<popover> 
<div class="exPopoverContainer"> 
<div class="popBg borderRadius"></div> 
<div class="popBody"> 
<div class="arrow-down" style="top: 170px;left: 13px;"></div> 
<h1>{[name]}</h1> 
<div class="popHeadLine"></div> 
<div class="popContentLeft"> 
{[description]} 
<br /> 
<br /> 
<a href="#">Buy</a> 
<a href="#">More info</a> 
</div> 
<div class="popContentRight">{[price]}</div> 
</div> 
</div> 
</popover> 
<marker> 
<div class="marker2 element-animation"> 
</div> 
</marker> 
</div>

jQuery

插件提供了easypin()和easypinShow()两个方法,我们使用easypinShow()来展示图片标注效果,它有一个data选项,支持json格式,它定义标注点相关数据,包括坐标位置,商品名称、描述和价格,这些数据可以是后台统一生成。它还提供了很多其他选项和回调函数,请看下面的代码。

$(document).ready(function(){ 
$('.pin').easypinShow({ 
data: '{"demo_image_1":{"0":{"name":"商品名称","description":"商品描述信息. ","price":"$67","coords":{"lat":"800","long":"228"}},"1":{"name":"Pierre Cardin","description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore. ","price":"$98","coords":{"lat":"597","long":"357"}},"2":{"name":"Pierre Cardin","description":"Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. ","price":"$100","coords":{"lat":"241","long":"352"}},"canvas":{"src":"fashion.jpg","width":"1000","height":"625"}}}', 
responsive: false, 
variables: { 
firstname: function(canvas_id, pin_id, data) { 
//console.log(canvas_id, pin_id, data); 
return data; 
}, 
surname: function(canvas_id, pin_id, data) { 
//console.log(canvas_id, pin_id, data); 
return data; 
} 
}, 
popover: { 
show: false, 
animate: true 
}, 
each: function(index, data) { 
return data; 
}, 
error: function(e) { 
console.log(e); 
}, 
success: function() { 
console.log('ok'); 
} 
}); 
});

easypin()可以用来实现图片标注效果,您可以在图片上任意位置标注,然后再弹出层中填写标注信息提交即可,支持拖动等等

一款简单的jQuery图片标注效果附源码下载到此就给大家介绍完了,希望对大家有所帮助!

Javascript 相关文章推荐
让ie运行js时提示允许阻止内容运行的解决方法
Oct 24 Javascript
jQuery中事件对象e的事件冒泡用法示例介绍
Apr 25 Javascript
推荐9款炫酷的基于jquery的页面特效
Dec 07 Javascript
js的toUpperCase方法用法实例
Jan 27 Javascript
全面解析Bootstrap表单使用方法(表单样式)
Nov 24 Javascript
javascript编程异常处理实例小结
Nov 30 Javascript
JavaScript实现三级联动菜单效果
Aug 16 Javascript
node.js中路由,中间件,ge请求和post请求的参数详解
Dec 26 Javascript
AngularJS监听ng-repeat渲染完成的两种方法
Jan 16 Javascript
在Vue methods中调用filters里的过滤器实例
Aug 30 Javascript
微信小程序实现点击空白隐藏的方法示例
Aug 13 Javascript
JavaScript中this函数使用实例解析
Feb 21 Javascript
酷炫jQuery全屏3D焦点图动画效果
Mar 22 #Javascript
浅析C/C++,Java,PHP,JavaScript,Json数组、对象赋值时最后一个元素后面是否可以带逗号
Mar 22 #Javascript
使用struts2+Ajax+jquery验证用户名是否已被注册
Mar 22 #Javascript
使用getBoundingClientRect方法实现简洁的sticky组件的方法
Mar 22 #Javascript
Node.js文件操作方法汇总
Mar 22 #Javascript
浅谈Sticky组件的改进实现
Mar 22 #Javascript
使用Sticky组件实现带sticky效果的tab导航和滚动导航的方法
Mar 22 #Javascript
You might like
php操作MongoDB基础教程(连接、新增、修改、删除、查询)
2014/03/25 PHP
WordPress中重置文章循环的rewind_posts()函数讲解
2016/01/11 PHP
php mysql实现mysql_select_db选择数据库
2016/12/30 PHP
利用PHP内置SERVER开启web服务(本地开发使用)
2021/03/09 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
js 纯数字不重复排列的另类方法
2010/07/17 Javascript
Javascript 检测键盘按键信息及键码值对应介绍
2013/01/03 Javascript
javascript数组随机排序实例分析
2015/07/22 Javascript
Bootstrap菜单按钮及导航实例解析
2016/09/09 Javascript
微信小程序 location API实例详解
2016/10/02 Javascript
js提示框替代系统alert,自动关闭alert对话框的实现方法
2016/11/07 Javascript
概述如何实现一个简单的浏览器端js模块加载器
2016/12/07 Javascript
bootstrapValidator 重新启用提交按钮的方法
2017/02/20 Javascript
node.js中http模块和url模块的简单介绍
2017/10/06 Javascript
Vue.js 2.5新特性介绍(推荐)
2017/10/24 Javascript
原生js实现仿window10系统日历效果的实例
2017/10/31 Javascript
js数据类型检测总结
2018/08/05 Javascript
聊聊Vue中provide/inject的应用详解
2019/11/10 Javascript
linux环境下安装pyramid和新建项目的步骤
2013/11/27 Python
Python实现提取谷歌音乐搜索结果的方法
2015/07/10 Python
python求解数组中两个字符串的最小距离
2018/09/27 Python
对python中的iter()函数与next()函数详解
2018/10/18 Python
使用Python获取网段IP个数以及地址清单的方法
2018/11/01 Python
python实现五子棋游戏
2019/06/18 Python
如何用OpenCV -python3实现视频物体追踪
2019/12/04 Python
Django Serializer HiddenField隐藏字段实例
2020/03/31 Python
浅析python 动态库m.so.1.0错误问题
2020/05/09 Python
使用opencv中匹配点对的坐标提取方式
2020/06/04 Python
Python使用20行代码实现微信聊天机器人
2020/06/05 Python
html5自动播放mov格式视频的实例代码
2020/01/14 HTML / CSS
寒假实习自荐信
2014/01/26 职场文书
法人授权委托书
2014/09/16 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
销售简历自我评价怎么写
2014/09/26 职场文书
2015大学生求职信范文
2015/03/20 职场文书
开天辟地观后感
2015/06/09 职场文书