源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

如何让你的Lightbox支持滚轮缩放及Base64图片

  • 时间:2020-04-15 05:22 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:如何让你的Lightbox支持滚轮缩放及Base64图片
在做文章类型的web页时,经常会遇到要点开看大图的需求,LightBox2则是在众多产品中比较优秀的一款Jquery插件。配置就不细说了,今天我主要要分享的是:如何在点开大图后,可以通过鼠标滚轮来缩放图片, [b]1、修改Lightbox源码使支持滚轮缩放 [/b]     支持鼠标滚轮主要就是把弹出后的框整个绑定上mousewheel事件,打开lightbox.js,找到Lightbox.prototype.build = function() {...}这一段,可以在这里(lightbox初始化的时候)把想要的滚轮事件绑定上去,比如在函数的末尾添加如下代码:
[url=img/image.jpg]
    这是一个最简单的弹出图,当点击Image #1时,就会弹出一个lightbox显示img/image.jpg的内容(弹出一个元素<img src="img/image.jpg" />)。     现在我们来考虑这种情况,如果图片是以Base64编码在服务器是存放在数据库中的?应该就是这样:     问题来了,href长度在IE下是有限制的,一张大的图片,不可能放在href字段中,图片将会被阉割(只显示上半部分)。     另外还有一种普遍情况,如果我是先显示小图,点击小图看大图,应该就是这样:
[url=data:image/png;base64,iVBORw...]     <img src="data:image/png;base64,iVBORw..." /> </a>
    好了,这有两份重复的base64数据,而且都是从服务器端传过来的,耗时耗带宽啊。     所以我按我的需求进行了改造,代码很简单,修改Lightbox.prototype.start = function($link) {...} 中的子函数addToAlbum:
    注释掉的部分就是原来的,$link是前面HTML代码中的a标签,改过后addToAlbum函数的作用是:在设置弹出图片的src时,不再从原始的的href中取字符作为弹出img标签的src,而是直接从a标签的子元素中找src属性,由于src属性的长度无限制,所以它不会存在图片截断的问题。  3、将Lightbox应用到已有的文章     第2节已经讲到了Lightbox使用时HTML有一定的格式,如果已有的文章中的图片是<img src="img/image.jpg">这样的,则必须对其进行一层封装:
[url=]      });  }
    其中,“lightbox-container”是文章所在容器的class。initLightbox函数应放置在页面加载ready时,它会把文章中的所有img标签都封装成为lightbox的格式。 本文就写到这了,第2、3点大家可以看自己的使用场景去使用,lightbox改动的重点在于支持滚轮缩放。 附上修改过的lightbox 
http://xiazai.jb51.net/201412/yuanma/lightbox(jb51.net).rar[/url]
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部