lightbox自定义图片大小的实现

lightbox的功能非常强大,但是lightbox有个很不人性话的地方就是不能自定义弹出层图片的大小(也许是我自己不会用吧)

切入正题

打开lightbox.js

设定两个变量

var lbxMaxWidth = 600;//弹出层最大宽度,
var lbxMaxHeight = 500;//弹出层最大高度

注:这两个变量可以自己随意设定,只要在lightbox脚本中可以读取到这两个变量就可以,下文会利用这两个大小来定义弹出层图片的大小。

找到这段话

 preloader.onload = function() {
        $image.attr('src', _this.album[imageNumber].link);
        $image.width = preloader.width;
        $image.height = preloader.height;
        return _this.sizeContainer(preloader.width, preloader.height);//这个是设定边框的大小
      };

修改成

 preloader.onload = function () {         

        $image.attr('src', _this.album[imageNumber].link);

              //preloader.width是图片的实际大小

                if (preloader.width > lbxMaxWidth)

        {  

                   preloader.height = (lbxMaxWidth / preloader.width) * preloader.height;  

                   preloader.width = lbxMaxWidth;  

               }   

              if (preloader.height > lbxMaxHeight) {

                    preloader.width = (lbxMaxHeight / preloader.height) * preloader.width;

                    preloader.height = lbxMaxHeight;

                }      

//上面这两个if是根据设置的宽度和高度等比例的缩放图片大小          

               $image.attr('width', preloader.width + 'px');//给img标签加宽度属性

                $image.attr('height', preloader.height + 'px');  //给img标签加高度属性

//设定边框的大小            

                return _this.sizeContainer(preloader.width, preloader.height);

            };

接下来还有一步:

打开lightbox.css 找到

#lightbox img {
  width: auto;
  height: auto;
}

这这一段去掉,否则图片还是会维持原来的大小

到此大功告成效果可点击  京深海鲜加工旗舰店

转载于:https://www.cnblogs.com/tutuzhang/archive/2012/06/05/2536515.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/548445.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JS判断数字类型

第一种方法 isNaN isNaN:返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字),NaN 即 Not a Number。 isNaN(numValue) 第二种方法 正则表达式 function checkRate(input) { var re /^[0-9].?[0-9]*/;//…

asp.net网页中导出EXCEL,WORD的环境设置验证实例

最近公司的业务服务器需要配置导出EXCEL,WORD的环境。程序是由其它公司开发的,这个环境的配置真的不好弄。会出现类似 检索 COM 类工厂中 CLSID 为{00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 网上的解决方法都…

JQuery Datatables —— 自定义导出列

在datatables中,如何选择性的导出那些指定的列, 点击这里查看官网文档,只要配置一个属性并设置列索引即可,具体代码如下图所示: buttons: [{extend: excel,className: btn btn-primary,filename: "导出",ex…

借助波音公司打造优秀按单制造(MTO II)管理系统

博主推荐延展咨询资深顾问王晓东文章近些年随着市场竞争的加剧,制造业产业链越来越关注客户的需求,针对客户个性化需求的按单制造(MTO II)生产模式在我国企业不断得到应用。按单制造(MTO II)企业在组织生产…

MyEclipes 设置代码自动提示

一、Window ——> Preferences 二、Java ——> Editor ——> Content Assist 三、更改内容为 【.qwertyuiopasdfghjklzxcvbnm 】,完成。

jQuery-input输入框下拉提示层

效果图 代码部分 // JavaScript Document (function($){$.fn.extend({"changeTips":function(value){value $.extend({divTip:""},value)var $this $(this);var indexLi 0;//点击document隐藏下拉层$(document).click(function(event){if($(event.targe…

MyEclipes 2016 CI 6 安装

一、双击安装包,打开,点击“Next” 二、 同意,Next 三、选择安装路径,然后点击Next 四、选择32位或者是64位后,点击Next开始安装。 五、去掉立即运行这个勾,点击完成。 六、找到破解目录文件,全…

netapp存储常用命令

cf status #检查Cluster功能的当前状态 cf enable/disable #启用禁用cluster cf takeover #cluster强制接管,partner在接管模式下切换到partner管理界面 cf giveback #在接管模式下,将服务返回给原节点 cifs shares #查看CIFS共享信息 df –Ag #查看存储所建组的…

Java的中排序方式

实体类: public class Person {public String getCode() {return code;}public void setCode(String code) {this.code code;}public String getName() {return name;}public void setName(String name) {this.name name;}public int getAge() {return age;}publi…

WPF:从WPF Diagram Designer Part 1学习控件模板、移动、改变大小和旋转

欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ] 由于上周主要做了项目组产品架构、给公司新员工培训以及其他会议等事情,在OpenExpressApp对建模支持的初步计划中我列了一些建模任务还没有开展,其中参考部分在…

JDBC最基本CRUD操作工具类

以连接SqlServer2008 R2为例 import java.sql.*;public final class JdbcUtils {private String url;private String user;private String password;public JdbcUtils(String url,String user,String password){this.url url;this.user user;this.password password;}stat…

JDBC中使用PreparedStatement执行SQL语句并管理结果集

基本说明 1、使用PreparedStatement在对反复操作多条结构相似的SQL语句时效率更高,并且可以使用参数替代变量,可以防止SQL注入。 2、PreparedStatement也提供了 execute() 、 executeUpdate() 、 executeQuery() 三个方法来执行crud操作&#xff0c…

Ubuntu下安装Gerrit

2019独角兽企业重金招聘Python工程师标准>>> 目标 配置Gerrit使用mysql数据库(原因:本人比较熟悉mysql) 使用http授权模式,使用apache反向代理。 SMTP使用163的个人邮箱 软件版本 Ubuntu 12.04 Gerrit 2.4.1 Apache 2.…

JDBC中使用RowSet包装结果集

背景 C#中有了DataSet,可以把底层数据读取到内存中进行离线操作。操作完成再同步到底层数据源。Java中也提供了类似的功能——RowSet。 和ResultSet相比,RowSet默认是可以滚动、可更新、可序列化的结果集合,而且作为Javabean使用。并支持离…

招几个兄弟和我一起做项目

为什么80%的码农都做不了架构师?>>> 个人名义发表,有事情站内联系。不说太多,反正能学到东西。呵呵。 工作内容: 1 负责项目中相关模块从应用到Framework部分(包括Java层和Native层)的开发 2 负…

JDBC中开启事务的批量插入操作

直接上代码 import java.sql.Connection; import java.sql.DriverManager; import java.sql.Statement;public class Batch {private String url;private String user;private String password;public Batch(String url,String user,String password){this.url url;this.user…

C#中? 、?? 、?. 、??= 的用法和说明

一、可空类型修饰符< ? > 引用类型能用空引用来表示一个表示一个不存在的值&#xff0c;但是值类型不能。例如&#xff1a; string str null; int i null;//编译报错 为了使值类型也能使用可空类型&#xff0c;就可以用 " ? "来表示&#xff0c;表现形式…

小议 find

说find之前我们先说两个概念&#xff1a;文件查找&#xff1b;文本过滤。这是两个不同的概念&#xff0c;所使用的命令也是不一样的。 文件查找&#xff1a;查找目录中的文件 文本过滤&#xff1a;查找文本中的行 文本过滤的命令有&#xff1a;grep 、fgrep 、egrep 等 格式为…

c++内存访问越界

http://blog.vckbase.com/arong/archive/2009/12/30/40598.html 1. 原理分析 经常有些新C&#xff0b;&#xff0b;程序员问&#xff1a;C&#xff0b;&#xff0b;的类的成员个数是不是有限制&#xff0c;为什么我加一个变量后程序就死了&#xff1f;或者说&#xff1a;是不是…