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 相关文章推荐
Js event事件在IE、FF兼容性问题
Jan 01 Javascript
js函数的延迟加载实现代码
Oct 11 Javascript
js实现点击左右按钮轮播图片效果实例
Jan 29 Javascript
Javascript中的arguments与重载介绍
Mar 15 Javascript
jquery checkbox无法用attr()二次勾选问题的解决方法
Jul 22 Javascript
jQuery实现select模糊查询(反射机制)
Jan 14 Javascript
原生js实现类似fullpage的单页/全屏滚动
Jan 22 Javascript
详解vue填坑之解决部分浏览器不支持pushState方法
Jul 12 Javascript
js中位数不足自动补位扩展padLeft、padRight实现代码
Apr 06 Javascript
vue实现PC端分辨率适配操作
Aug 03 Javascript
微信小程序picker组件两列关联使用方式
Oct 27 Javascript
为什么node.js不适合大型项目
Apr 28 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
桌面中心(二)数据库写入
2006/10/09 PHP
PHP开发框架kohana中处理ajax请求的例子
2014/07/14 PHP
Laravel 的数据库迁移的方法
2017/07/31 PHP
PHP 的Opcache加速的使用方法
2017/12/29 PHP
js使用数组判断提交数据是否存在相同数据
2013/11/27 Javascript
IE中getElementsByName()对有些元素无效的解决方案
2014/09/28 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
JavaScript中使用concat()方法拼接字符串的教程
2015/06/06 Javascript
CSS javascript 结合实现悬浮固定菜单效果
2015/08/23 Javascript
Bootstrap实现水平排列的表单
2016/07/04 Javascript
解析js如何获取css样式
2016/12/11 Javascript
详解express与koa中间件模式对比
2017/08/07 Javascript
深入理解JavaScript 中的匿名函数((function() {})();)与变量的作用域
2018/08/28 Javascript
nodejs aes 加解密实例
2018/10/10 NodeJs
详解ES6 Symbol 的用途
2018/10/14 Javascript
Vue.js轮播图走马灯代码实例(全)
2019/05/08 Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
2019/07/13 Javascript
微信小程序 wx:for 与 wx:for-items 与 wx:key的正确用法
2020/05/19 Javascript
[07:06]2018DOTA2国际邀请赛寻真——卫冕冠军Team Liquid
2018/08/10 DOTA
Python按行读取文件的实现方法【小文件和大文件读取】
2016/09/19 Python
详解python中的json的基本使用方法
2016/12/21 Python
Python简单网络编程示例【客户端与服务端】
2017/05/26 Python
Python 实现Windows开机运行某软件的方法
2018/10/14 Python
Python3匿名函数lambda介绍与使用示例
2019/05/18 Python
python实现生成Word、docx文件的方法分析
2019/08/30 Python
python列表的逆序遍历实现
2020/04/20 Python
Python 防止死锁的方法
2020/07/29 Python
Python用Jira库来操作Jira
2020/12/28 Python
美国瑜伽品牌:Gaiam
2017/10/31 全球购物
为数据库创建索引都需要注意些什么
2012/07/17 面试题
《长城》教学反思
2014/02/14 职场文书
五月的鲜花活动方案
2014/08/21 职场文书
公司开会通知
2015/04/20 职场文书
导盲犬小Q观后感
2015/06/11 职场文书
品牌形象定位,全面分析
2019/07/23 职场文书
python生成可执行exe控制Microsip自动填写号码并拨打功能
2021/06/21 Python