信息发布→ 登录 注册 退出

对 lightbox JS 图片控件进行了一下改造, 使其他支持复杂的图片说明

发布时间:2026-01-11

点击量:
修改的 lightbox 版本是 2.04 版。
下面是使用我们在使用 lightbox 来显示图片时的基本设置:
复制代码 代码如下:
<a href="image-url" rel="lightbox" title="image-remark">
  content
</a>

主要是给连接加了一个 rel="lightbox" 属性
以上面的试设置好连接时, 当点击此连接,lightbox 将会显示连接上的图片,并使用连接的 title 属性作为图片的说明,如果要为图片添加详细的图片说明,并为图片的说明设置一些格式,如字体的大小、颜色等,那么使用 title 这个属性来设置这些说明信息是没办法实现的。
由于客户一定要此功能,所以只好去查看 lightbox 的源代码,检查是否可以对其进行改造,以满足这个需要,幸运的是 lightbox 主要的代码量不是很大,而且可以对其进行一个小小的修改,就可以满足这个需要,主要是对 prototype.js 这个JS 框架不太熟悉。
以下是修改的过程 :
打开 lightbox.js 文件,原 218 行的代码为:
this.imageArray.push([imageLink.href, imageLink.title]);
可以看到这里是直接读取连接对象的 title 属性,所以我们只需要把 imageLink.title 改一下就可以了:
this.imageArray.push([imageLink.href, document.getElementById(imageLink.contentId).innerHTML]);

把 imageLink.title 改成了 document.getElementById(imageLink.contentId).innerHTML 了;
从这一句可以看出来,我们需要为连接对象设置一个 contentId 属性,这个属性的值是某个 DOM 元素的 ID 号,图片的说明就是此元素的内容了。
修改完之后就可以在 HTML 这样设置图片说明了:
复制代码 代码如下:
<a href="image-url" rel="lightbox" contentId="imgDesc" title="image">
  <div id="imgDesc" style="display:none">description</div>
  content
</a>
标签:# 只需  # 改成了  # 源代码  # 一个小小  # 并为  # 要为  # 说明了  # 可以看出  # 就可  # 可以看到  # 没办法  # 要把  # lightbox  # 不太  # 以满足  # 将会  # 这一  # 的是  # 主要是  # 就可以  # 对其  # 图片控件  # JS  
在线客服
服务热线

服务热线

4008888355

微信咨询
二维码
返回顶部
×二维码

截屏,微信识别二维码

打开微信

微信号已复制,请打开微信添加咨询详情!