图片预览小窗口html,jQuery和css3超酷图片预览插件
这是一款使用css3和Velocity.js制作的jquery图片预览插件。
电子商务网站设计的宗旨是通过简化的设计提高用户体验,提高转化率也有一定的模式。另外一种模式是在需要的地方提供更多的信息来达到同样的目的。这款jquery图片预览插件使用的就是第二种模式。
这个插件的操作十分简单:点击quick view按钮触发模态窗口来显示大图和图片的信息。
一个插件程序的设计理念是为用户提供最好的体验,有很多工具可以帮助我们制作平滑的动画效果,例如:Joel Besada 的Bounce.js 和 Julian Shapiro 的Velocity.js。
回到我们的教程,下面是一张显示该插件功能的gif图片:
HTML结构
html结构中图片画廊使用一个无序列表制作。.cd-quick-view
-
Quick View
- Prev
- Next
Produt Title
Lorem ipsum dolor sit amet, consectetur adipisicing...
- Add to cart
- Learn more
Close
CSS样式
首先需要注意的是,该插件的效果在移动设备和手机上隐藏的。原因是使用手机很容易就可以进入到产品页面。
大部分的动画效果都使用jQuery和Velocity.js来完成。半透明的遮罩层使用body::after伪元素来制作。
body::after {
/* dark overlay layer - visible when we fire .cd-quick-view */
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(71, 55, 78, 0.8);
visibility: hidden;
opacity: 0;
transition: opacity .3s 0s, visibility 0s .3s;
}
@media only screen and (min-width: 1024px) {
body.overlay-layer::after {
visibility: visible;
opacity: 1;
transition: opacity .3s 0s, visibility 0s 0s;
}
}
插件中很多元素的动画都带有CSS3 transition。为了是插件性能更好,我们使用了translateZ(0) hack技术。
.cd-quick-view {
display: block;
position: fixed;
max-width: 900px;
visibility: hidden;
/* Force Hardware Acceleration in WebKit */
transform: translateZ(0);
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
will-change: left, top, width;
z-index: 1;
}
JAVASCRIPT
当用户点击了.cd-trigger元素,我们获取被选择图片的top、left和宽度值,并将它放入到.cd-quick-view元素中(该元素是position: fixed的)。通过这个方法使.cd-quick-view拥有和图片相同的大小。
当我们移动.cd-quick-view元素,第一步我们移动.cd-quick-view的宽度到最终宽度(在插件中是400px)。我们也移动.cd-quick-view的位置,使它相对于屏幕居中。在这一步中,只有图片是可见的,图片说明仍被隐藏。
第二步我们 改变.cd-quick-view到它的最终值(屏幕宽度的80%,最大宽度900px),并改变它的位置使其居中。
我们使用Velocity.js来制作动画效果。这个插件重新实现了jQuery的$.animate()方法,使其性能更加优秀。在插件中,第一步动画使用了spring easing 效果,第二步中使用量为ease easing 效果。
$('.cd-trigger').on('click', function(event){
$('.cd-quick-view').css({
"top": topSelected, // this is the selected image top value
"left": leftSelected, // this is the selected image left value
"width": widthSelected, // this is the selected image width
}).velocity({
//animate the quick view: animate its width and center it in the viewport
//during this animation, only the slider image is visible
'width': sliderFinalWidth+'px',
'left': finalLeft+'px', // ($(window).width - sliderFinalWidth)/2,
'top': finalTop+ 'px', // ($(window).height - slider final height)/2,
}, 1000, [ 400, 20 ])
.velocity({
'width': quickViewWidth+'px', // 80% of the viewport
'left': quickViewLeft+'px', // 10% of the viewport
}, 300, 'ease' ,function(){
//show quick view content
$('.cd-quick-view').addClass('add-content');
}).addClass('is-visible');
//assign .overlay-layer class to the body, assign the .empty-box class to the selected .cd-item
//...
});
当用户关闭图片预览窗口,动画效果也是非常酷的。
注意:在关闭图片预览窗口之前,我们改变了图片的src的值。
图片预览小窗口html,jQuery和css3超酷图片预览插件相关推荐
- jQuery和CSS3超酷图片和按钮点击波特效
rippler是一款效果非常炫酷的 jQuery和 CSS3图片和按钮点击波特效插件. 点击波特效是指在按钮或图片上点击的时候,从点击的位置开始,会产生一种圆形光波向外辐射的炫酷效果.这款点击波特效同 ...
- 响应式网站导航html,jQuery和CSS3响应式网站导航幻灯片插件
这是一款即实用又炫酷的jQuery和CSS3响应式网站导航幻灯片插件.该插件将幻灯片制作为网站的hero导航,在幻灯片中展示网站各主要板块的内容,使用户可以非常容易的了解网站的主要信息. 该幻灯片插件 ...
- html5导航菜单置顶,jQuery和css3顶部固定导航菜单特效插件
这是一款非常实用的jQuery和css3顶部固定导航菜单特效插件.我们曾经在很多网站上都看到过这种顶部固定导航菜单特效.Disqus For Websites的导航菜单就是一个很好的例子. HTML结 ...
- html5 拉窗帘 效果,jQuery和CSS3超酷3D拉窗帘式滚动导航特效
这是一款效果炫酷的jQuery和CSS3 3D拉窗帘式导航特效.该特效使用CSS transformations 和 jQuery使两块"窗帘"沿Z轴方向模拟被拉开的效果. HTM ...
- jQuery和CSS3超酷二级下拉菜单插件
这是一款效果很酷又简单实用的 jQuery二级下拉菜单特效,该特效在点击触发按钮后,二级下拉菜单会向下滑动覆盖原来的主菜单,关闭后二级下拉菜单又向上滑动回去,二级菜单不占用多余的空间. 这个菜单插件是 ...
- 景区导览小程序怎么开发,需要哪些功能?
导览系统是智慧景区的重要组成部分,旨在为游客提供方便快捷的导览服务,使游客能够查看景区全景地图.查看景点图文介绍.收听讲解音频.快速查询公共服务设施,大幅度提升游客的游览体验. 景区建立导览系统就是为 ...
- 使用jQuery开发一个超酷的倒计时效果
转自:http://www.gbtags.com/technology/jquerytutorial/20110105countdownjquery/ 使用jQuery开发一个超酷的倒计时效果 日期: ...
- jQuery和CSS3商品图片预览轮播图插件
这是一款非常实用的 jQuery和 CSS3创意商品图片预览 轮播图插件.该轮播图插件以每个商品作为一个轮播图,用户可以在每个商品缩略图中查看该商品的颜色和款式.一般的商务网站都是通过图片来吸引用户, ...
- java ajax上传图片插件_java图片上传并预览,前台用jQuery插件AjaxFileUpload,后台用FileUtils.copyFile....
个人笔记,以备后用. 表体代码: 查看图片 js代码(记得要引入jquery库和ajaxfileupload库): //上传文件id号 function fileUpload(uploadFileId ...
最新文章
- vw实现移动端自适应页面
- 基数排序及其思想 C++代码实现及分析 恋上数据结构笔记
- 模式对话框与非模式对话框的区别
- oracle函数 MIN([distinct|all]x)
- 南华大学ACM队2021年7.14训练赛题解
- Pyspark:NLP(文本分类)
- PRML 十大经典机器学习算法
- iOS平台上aa(见缝插针)游戏的简易实现
- 计算机中的PS颜色填充快捷键,ps中填充颜色的快捷键是什么(填充Shift+F5)
- 2021年黄石二中高考成绩查询,【黄石二中2018高考金榜】黄石二中2004届高考总结...
- Fortran中输出Tecplot格式
- python 多态app_python 多态实例
- 学渣的刷题之旅 leetcode刷题 35.搜索插入位置(暴力法、二分查找)
- python安装cfgrib读取grib数据
- 简述什么是图灵机_图灵机的工作原理是什么
- 软件测试的定义、分类、方法、生命周期
- 破壳问答 | 收集问题
- 关于CEGUI的几点不解
- 【DispNet_CVPR_2016】论文阅读之一
- 美国俚语:down-to-earth踏实谦逊
热门文章
- SEO站外优化有哪些方法?
- 性能结果分析与理解(关于90%响应时间、图表等)
- VB6.0简繁体转换步骤
- 室内定位技术:UWB、蓝牙、RFID和WIFI——谁将是主角
- 【动态规划】盖房子(house)--未提交--已提交
- Android Studio插件Code Iris——自动生成UML类图
- 网投简历+宣讲会内容流水账(得帆宣讲会+汉得宣讲会)+感想+汉得offer
- STM32计算文件、片上flash、外部flash等数据的MD5校验值
- Eclipse: Type Java compiler level does not match the version of the instal解决方法
- 信泰人寿如意尊2.0终身寿险综合分析