欧美成人精品手机在线观看_69视频国产_动漫精品第一页_日韩中文字幕网 - 日本欧美一区二区

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

JavaScript動態調整圖片尺寸

admin
2010年2月9日 10:30 本文熱度 8438
在自己的網站上更新文章時一個比較常見的問題是:文章插圖太寬,使整個網頁都變形了。如果對每個插圖都先進行縮放再插入的話,太麻煩了。
我前段時間寫的一篇文章就遇到過這種事情,后來用CSS的overflow和max-width屬性暫時解決了頁面變形的問題。這種方法好處是簡單,但壞處是會破壞某些細節的效果。
如overflow:hidden,意思是當內部元素寬度大于父框架時隱藏超出寬度的部分。這樣做可能會是一些內容突然截斷,被隱藏了,很對不起觀眾。
通過max-width屬性限制文章插圖最大寬度的話,需要考慮各瀏覽器的兼容性。IE6是不支持這個屬性的,在我印象中,一些瀏覽器雖然支持這個屬性,但圖片不是等比縮放的(好像是Safari和Opera,記不清了),這樣做的話對這些瀏覽器的用戶很不公平。
因此,我最終選擇的是通過JavaScript動態改變圖片尺寸。這種方法對各種瀏覽器兼容性良好(現在應該很少人會禁用JavaScript吧?),如果換主題的話,也可以靈活地改變文章插圖的最大尺寸。
方案有兩個,由于我使用的主題是加載了jQuery庫的,因此可以用以下代碼實現:
以下為引用的內容:
$(document).ready(function() { $('.post img').each(function() { var maxWidth = 100; // 圖片最大寬度 var maxHeight = 100; // 圖片最大高度 var ratio = 0; // 縮放比例 var width = $(this).width(); // 圖片實際寬度 var height = $(this).height(); // 圖片實際高度 // 檢查圖片是否超寬 if(width > maxWidth){ ratio = maxWidth / width; // 計算縮放比例 $(this).css("width", maxWidth); // 設定實際顯示寬度 height = height * ratio; // 計算等比例縮放后的高度 $(this).css("height", height * ratio); // 設定等比例縮放后的高度 } // 檢查圖片是否超高 if(height > maxHeight){ ratio = maxHeight / height; // 計算縮放比例 $(this).css("height", maxHeight); // 設定實際顯示高度 width = width * ratio; // 計算等比例縮放后的高度 $(this).css("width", width * ratio); // 設定等比例縮放后的高度 }});});

如果不想加載jQuery庫,可以用以下代碼:
以下為引用的內容:
function ResizeImage(image, 插圖最大寬度, 插圖最大高度){ if (image.className == "Thumbnail") { w = image.width; h = image.height; if( w == 0 || h == 0 ) { image.width = maxwidth; image.height = maxheight; } else if (w > h) { if (w > maxwidth) image.width = maxwidth; } else { if (h > maxheight) image.height = maxheight; } image.className = "ScaledThumbnail"; }}

采用純JavaScript的話,麻煩點,需要手動為圖片加上class=”Thumbnail”,但最終效果是一樣的。

該文章在 2010/2/9 10:30:35 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved