jquery实现移动端点击图片查看大图特效


Posted in Javascript onSeptember 11, 2020

本文的需求很简单:点击图片查看大图,再点大图隐藏。多用于移动端,因为移动端屏幕小,可能需要查看大图。

具体实现代码

<!DOCTYPE html>
<html>
<meta charset="utf-8"/>
<head runat="server">
<title>JQuery点击图片查看大图by starof</title>
<style type="text/css">
.exampleImg { height:100px; cursor:pointer;}
</style>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript">
//alert($);
// (function (window, undefined) {
// var MyJQuery = function () {
// window.MyjQuery = window.$ = jQuery; window.$ = MyJQuery;
// };
// })(window);
// alert($);

$.fn.ImgZoomIn = function () {

bgstr = '<div id="ImgZoomInBG" style=" background:#000000; filter:Alpha(Opacity=70); opacity:0.7; position:fixed; left:0; top:0; z-index:10000; width:100%; height:100%; display:none;"><iframe src="about:blank" frameborder="5px" scrolling="yes" style="width:100%; height:100%;"></iframe></div>';
//alert($(this).attr('src'));
imgstr = '<img id="ImgZoomInImage" src="' + $(this).attr('src')+'" onclick=$(\'#ImgZoomInImage\').hide();$(\'#ImgZoomInBG\').hide(); style="cursor:pointer; display:none; position:absolute; z-index:10001;" />';
if ($('#ImgZoomInBG').length < 1) {
$('body').append(bgstr);
}
if ($('#ImgZoomInImage').length < 1) {
$('body').append(imgstr);
}
else {
$('#ImgZoomInImage').attr('src', $(this).attr('src'));
}
//alert($(window).scrollLeft());
//alert( $(window).scrollTop());
$('#ImgZoomInImage').css('left', $(window).scrollLeft() + ($(window).width() - $('#ImgZoomInImage').width()) / 2);
$('#ImgZoomInImage').css('top', $(window).scrollTop() + ($(window).height() - $('#ImgZoomInImage').height()) / 2);
$('#ImgZoomInBG').show();
$('#ImgZoomInImage').show();
};

$(document).ready(function () {
$("#imgTest").bind("click", function () {
$(this).ImgZoomIn();
});
});
</script>
</head>
<body>
<div>
<!--第一种写法-->
<img class="exampleImg" src="images/03.jpg" id="imgTest"/>
<!--第二种写法-->
<img class="exampleImg" src="images/p1_nav2.png" onClick="$(this).ImgZoomIn();"/>
</div>
</body>
</html>

jquery实现移动端点击图片查看大图特效

jquery实现移动端点击图片查看大图特效需要用到的技巧
需要点击图片中1、2、3、4四张小图分别查看大图,而下面左右按钮切换时是需要同时切换4张小图。

jquery实现移动端点击图片查看大图特效

因为移动端无法添加热点,最终一个解决方法是使用四个a标签定位到左上角,右上角,左下角,右下角四个区域。

<dl>
<dd style="display:block;">
 
<img src="images/four-duche.jpg" onClick="$(this).ImgZoomIn();">
 
<a href="javascript:;" src="images/11.jpg" class="topleft" onClick="$(this).ImgZoomIn();"></a>
 
<a href="javascript:;" src="images/12.jpg" class="topright" onClick="$(this).ImgZoomIn();"></a>
 
<a href="javascript:;" src="images/13.jpg" class="bottomleft" onClick="$(this).ImgZoomIn();"></a>
 
<a href="javascript:;" src="images/14.jpg" class="bottomright" onClick="$(this).ImgZoomIn();"></a>
 </dd>
 ...
</dl>

css

.topleft,.topright,.bottomleft,.bottomright{
 width:50%;
 height:50%;
 position:absolute;
}

.topleft{
 /*background-color:red;*/
 top:0;
 left:0;
}
.topright{
 /*background-color:green;*/
 top:0;
 right:0;
}
.bottomleft{
 /*background-color:blue;*/
 bottom:0;
 left:0;
}
.bottomright{
 /*background-color:yellow;*/
 bottom:0;
 right:0;
}

以上就是移动端点击图片查看大图的实现过程,希望对大家的学习有所帮助。

Javascript 相关文章推荐
匹配任意字符的正则表达式写法
Apr 29 Javascript
JavaScript小技巧 2.5 则
Sep 12 Javascript
javascript中sort()的用法实例分析
Jan 30 Javascript
45个JavaScript编程注意事项、技巧大全
Feb 11 Javascript
javascript中的Function.prototye.bind
Jun 25 Javascript
jQuery实现的登录浮动框效果代码
Sep 26 Javascript
三分钟带你玩转jQuery.noConflict()
Feb 15 Javascript
JS对象创建的几种方式整理
Feb 28 Javascript
jquery仿京东侧边栏导航效果
Mar 02 Javascript
Vue.js如何实现路由懒加载浅析
Aug 14 Javascript
微信小程序异步API为Promise简化异步编程的操作方法
Aug 14 Javascript
Element-ui之ElScrollBar组件滚动条的使用方法
Sep 14 Javascript
jquery解析json格式数据的方法(对象、字符串)
Nov 24 #Javascript
Bootstrap每天必学之按钮(一)
Nov 24 #Javascript
JavaScript DOM 学习总结(五)
Nov 24 #Javascript
jQuery解析json数据实例分析
Nov 24 #Javascript
全面解析Bootstrap表单使用方法(表单按钮)
Nov 24 #Javascript
全面解析Bootstrap表单使用方法(表单控件状态)
Nov 24 #Javascript
jQuery解析Json实例详解
Nov 24 #Javascript
You might like
apache2.2.4+mysql5.0.77+php5.2.8安装精简
2009/04/29 PHP
php数组函数序列之array_sum() - 计算数组元素值之和
2011/10/29 PHP
PHP中strncmp()函数比较两个字符串前2个字符是否相等的方法
2016/01/07 PHP
PHP chop()函数讲解
2019/02/11 PHP
jQuery 动画基础教程
2008/12/25 Javascript
JavaScript 以对象为索引的关联数组
2010/05/19 Javascript
修改jquery.lazyload.js实现页面延迟载入
2010/12/22 Javascript
Jquery带搜索框的下拉菜单
2013/05/06 Javascript
关于Javascript与iframe的那些事儿
2013/07/04 Javascript
5分钟理解JavaScript中this用法分享
2013/11/09 Javascript
jquery中交替点击事件toggle方法的使用示例
2013/12/08 Javascript
批量修改标签css样式以input标签为例
2014/07/31 Javascript
JavaScript中this详解
2015/09/01 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
JavaScript基本语法_动力节点Java学院整理
2017/06/26 Javascript
详解nuxt路由鉴权(express模板)
2018/11/21 Javascript
解决VUE自定义拖拽指令时 onmouseup 与 click事件冲突问题
2020/07/24 Javascript
JavaScript十大取整方法实例教程
2020/12/03 Javascript
轻松理解Python 中的 descriptor
2017/09/15 Python
Python设计模式之中介模式简单示例
2018/01/09 Python
python按时间排序目录下的文件实现方法
2018/10/17 Python
python 保存float类型的小数的位数方法
2018/10/17 Python
解决pyinstaller打包运行程序时出现缺少plotly库问题
2020/06/02 Python
如何在windows下安装配置python工具Ulipad
2020/10/27 Python
matplotlib事件处理基础(事件绑定、事件属性)
2021/02/03 Python
会计专业自荐信
2013/12/02 职场文书
《长城》教学反思
2014/02/14 职场文书
小学六一儿童节活动方案
2014/08/27 职场文书
工作疏忽、懈怠的检讨书
2014/09/11 职场文书
2014年幼儿园老师工作总结
2014/12/05 职场文书
2015财务年终工作总结范文
2015/05/22 职场文书
小学班主任工作经验交流材料
2015/11/02 职场文书
2016年社区“我们的节日·中秋节”活动总结
2016/04/05 职场文书
浅谈Redis位图(Bitmap)及Redis二进制中的问题
2021/07/15 Redis
Vue3中的Refs和Ref详情
2021/11/11 Vue.js
python中对列表的删除和添加方法详解
2022/02/24 Python