Layui图片预览,layer图片预览图片缩放,layui预览图片可放大放小

前言

layer图片预览,并实现缩放

实现

代码复制直接可用

效果图

在这里插入图片描述

html中

只要放在layer-photos-demo中的图片都可用预览

<div id="layer-photos-demo">
   <div>
   		<img alt="" style="width:100px;" src="image/error.png">
   </div>
   <div>
   		<img alt="" style="width:100px;" src="image/error.png">
   </div>
</div>
js中

layer使用

	// 查看图片 ======================================================================
	layer.photos({
	    photos: '#layer-photos-demo' // 图片预览容器
	    ,zIndex: 99999999 // 弹出层级
	    ,shade: 0.2// 背景虚化
	    ,shift: 0 //0-6的选择,指定弹出图片动画类型,默认随机
	});

实现滚动需要加入如下

/**
 * ------------------------------------------------------------------------------------------------------
 * 图片预览-鼠标滚动缩放
 * @param e
 * @returns
 */
$(document).on("mousewheel DOMMouseScroll", ".layui-layer-phimg img", function (e) {
    var delta = (e.originalEvent.wheelDelta && (e.originalEvent.wheelDelta > 0 ? 1 : -1)) || // chrome & ie
        (e.originalEvent.detail && (e.originalEvent.detail > 0 ? -1 : 1)); // firefox
    var imagep = $(".layui-layer-phimg").parent().parent();
    var image = $(".layui-layer-phimg").parent();// layui-layer-phimg 是 layer.photos 弹出图片后的样式
    var h = image.height();
    var w = image.width();
    if (delta > 0) {
        if (h < (window.innerHeight)) {
            h = h * 1.05;
            w = w * 1.05;
        }
    } else if (delta < 0) {
        if (h > 100) {
            h = h * 0.95;
            w = w * 0.95;
        }
    }
    imagep.css("top", (window.innerHeight - h) / 2);
    imagep.css("left", (window.innerWidth - w) / 2);
    image.height(h);
    image.width(w);
    imagep.height(h);
    imagep.width(w);
});
  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
layui是一款基于jQuery的前端UI框架,它提供了丰富的组件和样式,方便开发者快速构建美观的网页界面。在layui中,点击图片预览可以通过使用其内置的图片预览组件实现。 要实现点击图片预览,可以按照以下步骤进行操作: 1. 引入layui库和相关样式文件。在HTML文件中,通过`<link>`标签引入layui的CSS样式文件和JS文件。 2. 创建一个包含图片HTML元素。可以使用`<img>`标签来展示图片。 3. 给图片元素添加`lay-event`属性,并设置为`preview`。这样当点击图片时,layui会自动触发图片预览功能。 4. 初始化layui组件。在JS代码中,使用`layui.use()`方法初始化layui组件。 5. 监听图片预览事件。使用`element.on()`方法监听图片预览事件,并在回调函数中执行相应的操作。 下面是一个示例代码: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>点击图片预览</title> <link rel="stylesheet" href="path/to/layui/css/layui.css"> </head> <body> <img src="path/to/image.jpg" lay-event="preview"> <script src="path/to/jquery.js"></script> <script src="path/to/layui/layui.js"></script> <script> layui.use(['layer', 'element'], function(){ var element = layui.element; element.on('nav(preview)', function(elem){ var src = $(elem).attr('src'); // 在这里可以执行图片预览的操作,比如弹出一个大图预览窗口 layer.open({ type: 1, title: false, closeBtn: 0, area: 'auto', skin: 'layui-layer-nobg', // 没有背景色 shadeClose: true, content: '<img src="' + src + '" style="max-width:100%;">' }); }); }); </script> </body> </html> ``` 在上面的示例代码中,我们使用了`layer.open()`方法来实现图片预览的效果。当点击图片时,会弹出一个包含大图的浮层窗口。 希望以上内容能够帮助到你!如果还有其他问题,请继续提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值