国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

JS獲取圖片高度寬度的方法分享

2019-11-20 12:38:21
字體:
來源:轉載
供稿:網友

一般獲取圖片高度寬度的寫法:

復制代碼 代碼如下:

var img = new Image();
img.src = imgsrc;
var imgWH = CalcImgTiple(img.width, img.height);

但chrome中測試 無法獲取到。img.width, img.height都為0

原因:當圖片不是本地圖片,而是網絡圖片
onload 在成功地裝載了圖像時調用的事件處理程序。

在做web開發,其中有一個需求:利用Javascript獲取要加載的圖片的尺寸,所以很自然的,想到了img的onload方法,在firefox下開發完成后,到IE下調試,發現img的onload事件很多情況下都不被調用。

最初的代碼如下:

復制代碼 代碼如下:

var img = new Image;
img.src = "test.gif";
img.onload = function(){
alert ( img.width );
};

這段代碼看著沒什么問題,但是為什么onload沒有被IE調用呢?因為IE會緩存圖片,第2次加載的圖片,不是從服務器上傳過來的,而是從緩沖區里加載的。是不是從緩沖區里加載的圖片就不觸發onload事件呢?我于是我測試了以下代碼,成功了~

復制代碼 代碼如下:

var img = new Image;
img.onload = function(){
alert ( img.width );     };
img.src = "test.gif";

把onload寫到前面去,先告訴瀏覽器如何處理這張圖片,再指定這張圖片的源,這樣就正常了。所以,不是IE沒有觸發onload事件,而是因為加載緩沖區的速度太快,以至于沒有運行到img.onload的時候,onload事件已經觸發了。這讓想到了Ajax,在寫xmlhttp的時候,都是先指定onstatechange的回調函數,然后再send數據的,道理是一樣的

以上所述就是本文的全部內容了,希望大家能夠喜歡。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 敦煌市| 闻喜县| 浪卡子县| 平昌县| 凯里市| 轮台县| 鲁甸县| 柳江县| 铜川市| 睢宁县| 电白县| 渝中区| 花莲市| 县级市| 韩城市| 镇巴县| 平乐县| 虞城县| 沙河市| 留坝县| 左云县| 清新县| 句容市| 措美县| 苏尼特右旗| 皮山县| 聊城市| 九龙县| 安西县| 毕节市| 得荣县| 郎溪县| 嘉善县| 大化| 博罗县| 通化市| 绵阳市| 贵阳市| 布尔津县| 英山县| 稻城县|