用JavaScript获取图片的真实尺寸大小的方法详解

码农天地 -
用JavaScript获取图片的真实尺寸大小的方法详解

网页页面上的图片尺寸似乎都千篇一律。我们最常见到的带有多图的文章页面中,图的大小通常是和页面的宽度一致,这样看起来,页面就是一个直筒形,这样的布局看多了就会觉得很单调。之所以形成这样的局面,我想很大程度上是因为老式浏览器的限制。但随着现代浏览器(火狐/谷歌/IE11)的普及,浏览器对页面设计的限制越来越少,Web程序员的想象能力能够得到极大的发挥。

比如,冷知识:你知道每个视窗都有的 [x] 是怎么来的吗?这篇文章中,很多图片超出了文本宽度的限制,给人一种参差错落的感觉,同时,让大图片以其真实的尺寸展示,给人以更震撼的感觉。

但从技术上,我们可以轻松的用文本的最大宽度限制图片,让它们都保持一个宽度,而不按文本的宽度时,我们就需要每个图片的自己的尺寸。我们可以在服务端编辑时声明图片的原始尺寸。而一种更灵活的方式是通过在页面上放一段js来动态的获取图片的原始大小尺寸,动态改变图片的显示大小。这样即能兼容老的也文本最大宽度的方式,还可以在需要的时候让图片呈现出其原始的大小。

如何用JavaScript在浏览器端获取图片的原始尺寸大小?var img = $("#img_id"); // Get my img elemvar pic_real_width, pic_real_height;$("<img/>") // Make in memory copy of image to avoid css issues .attr("src", $(img).attr("src")) .load(function() { pic_real_width = this.width; // Note: $(this).width() will not pic_real_height = this.height; // work for in memory images. });

Webkit浏览器(谷歌浏览器等)是在图片的loaded事件之后才能获取高度和宽度值。所以,你不能使用timeout函数延时等待,最好的方法是使用图片的onload事件。

为了避免CSS对图片大小尺寸的影响,上面的代码将图片拷贝到内存中进行计算。

如果你的页面是老式页面,你可以按需把这段代码嵌入页面底部,它不需要你修改原有页面。

参考stackoverflow

推荐教程:《javascript基础教程》

以上就是用JavaScript获取图片的真实尺寸大小的方法详解的详细内容,更多请关注php中文网其它相关文章!

微信分享相关标签:JavaScript 图片大小本文转载于:webhek,如有侵犯,请联系a@php.cn删除上一篇:JavaScript事件委托的技术原理下一篇:使用async属性异步加载执行JavaScript的方法

相关文章

相关视频

javascript阻塞问题javascript中的split方法详解彻底弄懂JavaScript执行机制对JavaScript开发者非常有用的10个奇淫巧...用JavaScript获取图片的真实尺寸大小的方法...javascript常用的数据结构JavaScript数据类型JavaScript比较运算符

网友评论

文明上网理性发言,请遵守 新闻评论服务协议

我要评论立即提交专题推荐独孤九贱-php全栈开发教程

全栈 100W+

主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门

玉女心经-web前端开发教程

入门 50W+

主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门

天龙八部-实战开发教程

实战 80W+

主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习

作者信息

coldplay.xixi

好好学习 天天向上

最近文章PHP7如何安装Phalcon框架?962php7安装redis扩展的方法368用JavaScript将Canvas内容转化成图片的方法详解912发布技术文章最新文章热门排行

用JavaScript将Canvas内容转化成图片的方法详解一起学习Javascript网页截屏的方法用JavaScript检测出当前浏览器是否是无头浏览器JavaScript document.write() 用法前端的基础知识巩固Object.fromEntries和Object.entries的使用js中闭包的概念JS 中几种处理’this’指向的方式

RN布局的实例详解jQ选择器汇总JS是什么意思json格式是什么?json格式文件怎么打开?vue.js中created方法的使用详解echarts柱状图颜色设置:echarts柱状图如何设置不同颜色?(代码)js数组如何删除指定位置的元素?删除指定位置元素的2种方法怎样实现Vue项目中使用Vux推荐视频教程JavaScript设计模式视频教程黑马云课堂JavaScript 高级框架设计视频教程JavaScript OOP调试技巧视频教程视频教程分类php视频教程html视频教程css视频教程JS视频教程jQuery视频教程mysql视频教程Linux视频教程Python视频教程article_status = 684186;网站首页 PHP视频PHP实战PHP代码PHP手册词条手记编程词典

php中文网:公益在线php培训,帮助PHP学习者快速成长! 合肥彼岸互联信息技术有限公司

Copyright 2014-2020 https://www.php.cn/ All Rights Reserved | 皖B2-20150071-9 皖公网安备 34010402701654号 关于我们免责申明赞助与捐赠广告合作

座机号码:0551-64933227  安徽省合肥市政务新区置地广场D座2101

  var _hmt = _hmt || [];(function(){var hm = document.createElement("script");hm.src="//hm.baidu.com/hm.js?8cc45d54c337ca616c34b1cf747da91c";var s=document.getElementsByTagName("script")[0];s.parentNode.insertBefore(hm, s);})();(function(){var bp = document.createElement('script');var curProtocol = window.location.protocol.split(':')[0];if(curProtocol === 'https'){bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';}else{bp.src = 'http://push.zhanzhang.baidu.com/push.js';};var s = document.getElementsByTagName("script")[0];s.parentNode.insertBefore(bp, s);})();$('.content').viewer();
特别申明:本文内容来源网络,版权归原作者所有,如有侵权请立即与我们联系(cy198701067573@163.com),我们将及时处理。

Tags 标签

加个好友,技术交流

1628738909466805.jpg