首页 web前端 js教程 利用javascript解决图片缩放及其优化的代码_图象特效

利用javascript解决图片缩放及其优化的代码_图象特效

May 16, 2016 pm 05:53 PM
图片缩放

一个客户跟我联系说,刚给他做的网站,显示不正常,我顿时一紧张,这是我独立完成的第一个项目,于是赶紧打开他的网站看了看,没看出什么不正常来。我又问他怎么不正常,他说和交接项目时的效果不一样,晕,交接时要是不正常,项目肯定交接不了啊,干脆让他截个图过来。果然不正常,是他刚上传的一张图片把显示内容的窗口撑开了。查看代码,明明写好了max-width,怎么还会出现这种情况。突然发现他发来的图上,那个浏览器看着不顺眼,像是古老的而神圣的IE6!经过确认,果然是它,又是它!我真是疏忽,没给他在IE6下测试就交工了。

说起IE6,真是让我们这些做前端的人又恨又无奈,许多属性都不支持。可不少用户还在用它,我们也不能无视。为了兼容,我只好跟同事请教了一下,然后针对IE6用js缩放来显示图片并进行了一些细节上的优化。

尽管今天的这个客户网站比较小,对网站性能的要求也不高,但考虑以后可能还会用到这些东西,做优化是个长期学习的过程,我查阅了一些文章,说是如果利用img标签的onload方法来调用函数进行尺寸的修改,对性能的影响比较大,另外,利用 -expression 行为似乎也不可取(以后继续求证吧),所以,最后是采用页面加载时触发。

复制代码 代码如下:

function resizeImage(img,width){
var image=new Image();
image.src=img.src;
var temp = image.width;
img.width = temp = (temp>width)?width:temp;
img.style.display = "inline";
}
function doResize(){
if($.browser.version==6&&$.browser.msie) $("img").each(function(){resizeImage(this,100)});
}
window.onload = doResize;

这段代码利用resizeImage函数判断,并且修改img.width属性,原理比较简单,在这段代码前面我还加了一个对IE6浏览器的判定,除了它以外,我还是让CSS搞定图片的尺寸。我在代码中没有定义图片的高和宽的数值,这样在缩放时,只要修改其中的一个数值,让另一个数值去自适应,而不是让js去执行等比缩放,这也算是一点点优化吧。我在代码中引用了Jquery(因为习惯了),你没必要这样做,我之所以这么写,是在DOM元素返回以后可以统一进行函数处理。考虑到客户经常会使用外链的图片,这时,网页的显示速度就受到图片源的影响,所以在页面加载时我先利用CSS把需要显示的图片隐藏,直到图片缩放后再利用js的方法显示图片,因此,又对IE6做了个hack:
复制代码 代码如下:

img{
display:inline !important;
display:none;
max-width:180px;
}
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌
威尔R.E.P.O.有交叉游戏吗?
1 个月前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

JavaScript 如何实现图片缩略图功能? JavaScript 如何实现图片缩略图功能? Oct 25, 2023 am 08:56 AM

JavaScript如何实现图片缩略图功能?当我们在网页中展示图片时,有时候需要将原始的大图进行缩小,以适应页面的布局需求,这就需要用到图片缩略图功能。在JavaScript中,我们可以通过以下几种方法来实现图片的缩略图功能:使用HTML直接设置图片的宽度和高度最简单的方式就是直接在HTML中设置图片的宽度和高度属性来实现缩略图效果。例如:&l

如何使用CSS实现图片的缩放效果 如何使用CSS实现图片的缩放效果 Nov 21, 2023 pm 04:17 PM

如何使用CSS实现图片的缩放效果在网页设计中,图片的缩放效果是常见的需求之一。通过CSS的相关属性和技巧,我们可以轻松地实现图片的缩放效果。下面,将为大家详细介绍如何使用CSS来实现图片的缩放效果,并给出具体的代码示例。使用transform属性实现图片的矩阵缩放transform属性允许我们通过旋转、缩放、倾斜或平移元素来进行变换。其中,缩放变换是实现图片

Vue 中如何实现图片缩放以及放大镜效果? Vue 中如何实现图片缩放以及放大镜效果? Jun 25, 2023 pm 07:32 PM

Vue中如何实现图片缩放以及放大镜效果?随着Web技术的不断发展,用户对于网站上的图片展示效果要求也越来越高。其中,图片缩放以及放大镜效果是比较常见的需求。在Vue中实现图片的缩放以及放大镜效果相对来说比较简单,接下来我将详细介绍具体实现方法。一、基础方法首先,让我们来看一下如何实现基础的图片缩放效果。实现方法简单,只需要使用Vue的内置指令

使用PHP和GD库实现图片缩放的最佳方法 使用PHP和GD库实现图片缩放的最佳方法 Jul 12, 2023 pm 08:07 PM

使用PHP和GD库实现图片缩放的最佳方法近年来,随着互联网的普及,图片处理成为了许多站点必备的功能之一。而图片缩放作为图片处理中最常见的需求之一,需要能够在不损失图片质量的前提下,按比例缩放图片大小,以适应不同的显示需求。PHP作为一种常见的服务器端编程语言,拥有丰富的图像处理库,其中最常用的是GD库。GD库提供了一个简单而强大的接口,可以用来处理各种图像操

如何使用PHP开发简单的图片缩放和裁剪功能 如何使用PHP开发简单的图片缩放和裁剪功能 Sep 21, 2023 am 10:28 AM

如何使用PHP开发简单的图片缩放和裁剪功能摘要:图片处理在Web开发中是一个常见的需求,本文将介绍如何使用PHP开发简单的图片缩放和裁剪功能,并提供具体的代码示例。通过本文的学习,读者可以了解如何使用PHP在Web应用中实现对图片的基本处理功能。一、背景介绍在Web开发中,有时候我们需要对图片进行缩放或者裁剪,以适应不同的页面布局或者满足特定需求。PHP作为

如何使用HTML、CSS和jQuery实现图片缩放的高级功能 如何使用HTML、CSS和jQuery实现图片缩放的高级功能 Oct 25, 2023 am 09:07 AM

如何使用HTML、CSS和jQuery实现图片缩放的高级功能引言:在现代网页设计中,图片的美观和适应性非常重要。然而,常规的图片展示往往不能满足我们的需求。在本文中,我们将介绍如何使用HTML、CSS和jQuery来实现一些高级的图片缩放功能。通过这些技术,我们可以实现自定义的图片缩放效果,并为我们的网页增加更多的交互性。步骤1:HTML标记首先,我们需要一

CSS Positions布局实现图片缩放的技巧 CSS Positions布局实现图片缩放的技巧 Sep 26, 2023 pm 02:17 PM

CSSPositions布局实现图片缩放的技巧在网页设计中,图片的缩放是常见的需求之一。通过CSSPositions布局,我们可以实现图片的缩放效果,为网页增添更好的视觉体验。本文将介绍一些技巧,并给出具体的代码示例。使用position属性设置图片的位置:在CSS中,可以使用position属性来定义元素的定位方式。通过设置position属性为"re

利用CSS实现图片气泡特效的技巧和方法 利用CSS实现图片气泡特效的技巧和方法 Oct 18, 2023 pm 12:24 PM

利用CSS实现图片气泡特效的技巧和方法在网页设计中,给图片添加特效是提升用户体验的重要手段之一。其中,图片气泡特效可以为图片增添趣味性和互动性,使网页内容更加吸引人。本文将分享一些利用CSS实现图片气泡特效的技巧和方法,并附带具体的代码示例。使用伪类元素创建气泡效果通过使用CSS的伪类元素,我们可以实现在图片上方添加一个气泡的效果。具体的方法是通过设置伪类元

See all articles