1、什么时候需要获取图片真实的宽度和高度
在做pc网页的时候,有时候会考虑按照插入的图片的尺寸来判断图片是横图还是竖图。然后判断过后给予不同的展示方式!
另外一种就是在手机页面上,在新闻页插入的图片往往都是按照图片的原尺寸来展示,如果手机屏幕太小,太大的图就会超出去!这时候有两种解决办法
1)给所有的图片加上这样的样式
1
.news img{margin:5px auto; display:block;width:100%; height:auto;}
但是这种方式有另外一个问题就是,如果插入的图片本身就很小的话,也会被直接拉伸成100%显示,显然这是不合理的!那么这里就介绍另外一种方式就是通过js动态展示图片的尺寸!
2)js动态获取图片的尺寸
jquery方式
代码如下 | 复制代码 |
var _w = parseInt($(window).width());//获取浏览器的宽度 |
js方式
代码如下 | 复制代码 |
window.onload = function(){ function getViewSize() {//获取浏览器视口的宽高 return { "w": window['innerWidth'] || document.documentElement.clientWidth, "h": window['innerHeight'] || document.documentElement.clientHeight } } function getFullSize() {//获取浏览器最大的宽度 var w = Math.max(document.documentElement.clientWidth, document.body.clientWidth) + Math.max(document.documentElement.scrollLeft, document.body.scrollLeft); var h = Math.max(document.documentElement.clientHeight, document.body.clientHeight) + Math.max(document.documentElement.scrollTop, document.body.scrollTop); w = Math.max(document.documentElement.scrollWidth, w); h = Math.max(document.documentElement.scrollHeight, h); return { "w": w, "h": h }; } var _sv_w = getViewSize()["w"]; var _sf_w = getFullSize()["w"]; var _w = _sv_w;//这里用视口的宽度,具体视情况 var Imgarray = document.getElementsByTagName("img"); var realWidth;//真实的宽度 var realHeight;//真实的高度 for(var i =0;i imgtemp.src = Imgarray[i].src; imgtemp.index = i;//指定一个检索值,用于确定是哪张图 imgtemp.onload = function(){//图片加载完成后执行 var _stemp = this;//将当前指针复制给新的变量,不然会导致变量共用 realWidth = this.width; realHeight = this.height; if(realWidth >=_w ) { Imgarray[_stemp.index].style.width = _w+'px'; Imgarray[_stemp.index].style.height = 'auto'; } else{ Imgarray[_stemp.index].style.width = realWidth+'px'; Imgarray[_stemp.index].style.height = realHeight+'px'; } } } } |
上面两种方法中jquery比较简单,实现起来比较快,第二种比较复杂些,但是执行起来比jquery要快!
敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载像素火影骨架佐助 (Perseverance Fire Shadow)手机版v1.16
下载要塞英雄 安卓版v33.20.0-39082670-Android
下载梦想城镇vivo最新版本 安卓版v12.0.1
梦想城镇vivo版是这款卡通风模拟经营类手游的渠道服版本,玩
怦然心动的瞬间 安卓版v1.0
怦然心动的瞬间是一款真人向的恋爱互动游戏,在游戏中玩家将扮演
曼尼汉堡店游戏 安卓版v1.0.3
曼尼汉堡店是一款非常好玩的精品恐怖类型冒险游戏,在这款游戏中
现代总统模拟器去广告版 安卓版v1.0.46
现代总统模拟器是一款休闲养成类游戏,可能对于不少的玩家来说都
现代总统模拟器付费完整版 安卓版v1.0.46
现代总统模拟器高级版在商店是需要付费的,相对于普通版本,高级