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 相关文章推荐
JavaScript Serializer序列化时间处理示例
Jul 31 Javascript
jquery+ajax验证不通过也提交表单问题处理
Dec 12 Javascript
AngularJS 执行流程详细介绍
Aug 18 Javascript
JS简单设置下拉选择框默认值的方法
Aug 20 Javascript
JavaScript队列、优先队列与循环队列
Nov 14 Javascript
自己封装的一个简单的倒计时功能实例
Nov 23 Javascript
利用vue-router实现二级菜单内容转换
Nov 30 Javascript
简单实现js无缝滚动效果
Feb 05 Javascript
走进AngularJs之过滤器(filter)详解
Feb 17 Javascript
JS去掉字符串前后空格或去掉所有空格的用法
Mar 25 Javascript
微信小程序如何获取用户收货地址
Nov 27 Javascript
vue实现随机验证码功能(完整代码)
Dec 10 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
php 获取客户端的真实ip
2009/11/30 PHP
PHP实现算式验证码和汉字验证码实例
2015/03/09 PHP
WordPress中自定义后台管理界面配色方案的小技巧
2015/12/29 PHP
PHP静态方法和静态属性及常量属性的区别与介绍
2019/03/22 PHP
Js 代码中,ajax请求地址后加随机数防止浏览器缓存的原因
2013/05/07 Javascript
js控制frameSet示例
2013/09/10 Javascript
jQuery实现公告文字左右滚动的实例代码
2013/10/29 Javascript
jQuery jcrop插件截图使用方法
2013/11/20 Javascript
jQuery读取和设定KindEditor值的方法
2013/11/22 Javascript
jsp网页搜索结果中实现选中一行使其高亮
2014/02/17 Javascript
三种动态加载js的jquery实例代码另附去除js方法
2014/04/30 Javascript
离开当前页面前使用js判断条件提示是否要离开页面
2014/05/02 Javascript
移除AngularJS下URL中的#字符的方法
2015/06/19 Javascript
vue.js实现用户评论、登录、注册、及修改信息功能
2020/05/30 Javascript
Node.js如何优雅的封装一个实用函数的npm包的方法
2019/04/29 Javascript
react实现同页面三级跳转路由布局
2019/09/26 Javascript
微信小程序实现modal弹出框遮罩层组件(可带文本框)
2020/12/20 Javascript
python基础教程之简单入门说明(变量和控制语言使用方法)
2014/03/25 Python
Python中循环引用(import)失败的解决方法
2018/04/22 Python
利用 PyCharm 实现本地代码和远端的实时同步功能
2020/03/23 Python
python plt可视化——打印特殊符号和制作图例代码
2020/04/17 Python
怎样从/向数据文件读/写结构
2014/11/23 面试题
优秀党员转正的自我评价
2013/10/06 职场文书
传媒专业推荐信范文
2013/11/23 职场文书
毕业生优秀推荐信
2013/11/26 职场文书
销售文员岗位职责
2013/11/29 职场文书
医院护士专业个人的求职信
2013/12/09 职场文书
国家励志奖学金获奖感言
2014/01/09 职场文书
优秀员工评语
2014/02/10 职场文书
2015年学校安全工作总结
2015/04/22 职场文书
2015年事业单位工作总结
2015/04/27 职场文书
小学生必读成语故事大全:送给暑假的你们
2019/07/09 职场文书
Pytorch中的学习率衰减及其用法详解
2021/06/05 Python
Python办公自动化之教你如何用Python将任意文件转为PDF格式
2021/06/28 Python
MySQL中存储时间的最佳实践指南
2021/07/01 MySQL
HTML5基础学习之文本标签控制
2022/03/25 HTML / CSS