使用JS脚本动态调整网页图片大小

作者:我就是个世界 发表于:2009-05-05
如何在网页中添加限制图片显示尺寸的功能,要求如下:

[quote]大于640像素宽、480像素高的图片,全部以640*480规格显示
小于640像素宽、480像素高的图片,以原尺寸显示
点击该图片时,弹出新窗口打开原图[/quote]
实现该功能大致思路有二:

[b]服务器端方案:[/b]利用程序读取图片大小,重新计算后宽和高设置到img标签的属性中,并输出链接
[b]客户端方案:[/b]提取网页中图片,重新计算宽和高后直接修改其属性。
鉴于服务器端方案难度较大,并且会增加负荷,遂为其作JavaScript脚本如下:

[color=#FF0000]resizeImages.js[/color][separator]

--------------------------------------------------------------------------------
[code]//注册事件,窗体加载完成后开始执行逻辑
window.onload = function() {
    //遍历文档中的图片
    for (var index = 0; index < document.images.length; index++) {
        //定义要限制的图片宽高
        var widthRestriction = 640;
        var heightRestriction = 480;
        //开始调整尺寸
        if (document.images[index].width > widthRestriction) {
            document.images[index].width = widthRestriction;
        } else if (document.images[index].height > heightRestriction) {
             document.images[index].height = heightRestriction;
        }
        //注册事件,点击在新窗口打开原图
        document.images[index].onclick = function() {window.open(this.src)};
        document.images[index].title = document.images[index].title + ' 点击在新窗口中查看原图';
    }
}[/code]
--------------------------------------------------------------------------------

此代码未必适用于所有网页,因为它会把页面内的所有图片进行调整,若要借用还需修改修改。

分享:

扫一扫在手机阅读、分享本文

请发表您的评论