web网页按比例显示图片实现原理及js代码_javascript技巧
在动态站点上经常需要上传自己的图片,而这些图片的大小是未知的,在显示成缩略图的时候必须进行按比例的缩放才能美观地显示。以最近做的golf网站(http://www.changligolfsales.com)做例子。
该网站需要上传高尔夫产品图片,并以缩略图显示在列表上,站点服务器支持Asp,但不支持aspjpeg之类的生成缩略图组件,所以将上传的图片直接显示成缩略图,就需要按比例缩放了,前提是要获取图片的长宽,第一个想到的方法是在上传的时候通过ADODB.STREAM对象读取图片的长宽信息保存在数据库并在页面生成的时候读取出来计算比例。这个方法明显的缺点是显示每张图片都要在服务器读取数据并计算,消耗资源多了也加上了页面打开时延。
而第二个方法使用Javascript是将计算量转移到了客户端。
原理是在页面载入完成后(onload触发)在客户端使用Javascript读取每张图片的大小并进行缩放。
//将imageDest图片的大小按比例缩放,适合显示在宽W和高H的区域内
function ResizeImage(imageDest, W, H)
{
//显示框宽度W,高度H
var image = new Image();
image.src = imageDest.src;
if(image.width>0 && image.height>0)
{
//比较纵横比
if(image.width/image.height >= W/H)//相对显示框:宽>高
{
if(image.width > W) //宽度大于显示框宽度W,应压缩高度
{
imageDest.width = W;
imageDest.height = (image.height*W)/image.width;
}
else //宽度少于或等于显示框宽度W,图片完全显示
{
imageDest.width = image.width;
imageDest.height = image.height;
}
}
else//同理
{
if(image.height > H)
{
imageDest.height = H;
imageDest.width = (image.width*H)/image.height;
}
else
{
imageDest.width = image.width;
imageDest.height = image.height;
}
}
}
}
以上函数对图片进行缩放。
golf网站的每张缩略图的id都设为imgProductItem,如:
添加一个批量操作的函数:
//将页面内所有指定id的图片按比例缩放
function RsizeAllImageById(id, W, H)
{
var imgs = document.getElementsByTagName("img");
for(var i=0; i
if(imgs[i].id == id)
{
ResizeImage(imgs[i], W, H);
}
}
}
这样在页面的body添加
;在head区添加:
就可以将所有图片显示成缩略图了。

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Bagaimana untuk melaksanakan fungsi lakaran kecil imej dalam JavaScript? Apabila kami memaparkan imej pada halaman web, kadangkala kami perlu mengurangkan imej besar asal untuk memenuhi keperluan susun atur halaman, yang memerlukan penggunaan fungsi lakaran kecil imej. Dalam JavaScript, kita boleh melaksanakan fungsi lakaran kenit imej melalui kaedah berikut: Gunakan HTML untuk menetapkan secara langsung lebar dan tinggi imej Cara paling mudah ialah menetapkan secara langsung atribut lebar dan ketinggian imej dalam HTML untuk mencapai kesan lakaran kecil. Contohnya:&l

Cara menggunakan CSS untuk mencapai kesan zum imej Dalam reka bentuk web, kesan zum imej adalah salah satu keperluan biasa. Melalui sifat dan teknik CSS yang berkaitan, kami boleh mencapai kesan zum imej dengan mudah. Di bawah, kami akan memperkenalkan secara terperinci cara menggunakan CSS untuk mencapai kesan zum imej, dan memberikan contoh kod khusus. Gunakan atribut transformasi untuk melaksanakan penskalaan matriks imej Atribut transformasi membolehkan kami mengubah elemen dengan memutar, menskala, menyengetkan atau menterjemahkannya. Antaranya, transformasi skala adalah untuk merealisasikan gambaran

Bagaimana untuk melaksanakan penskalaan imej dan kesan kaca pembesar dalam Vue? Dengan perkembangan teknologi Web yang berterusan, pengguna mempunyai keperluan yang semakin tinggi untuk kesan paparan imej pada tapak web. Antaranya, pembesaran imej dan kesan kaca pembesar adalah keperluan yang agak biasa. Ia agak mudah untuk melaksanakan penskalaan imej dan kesan kaca pembesar dalam Vue Seterusnya, saya akan memperkenalkan kaedah pelaksanaan khusus secara terperinci. 1. Kaedah asas Mula-mula, mari kita lihat bagaimana untuk mencapai kesan penskalaan imej asas. Kaedah pelaksanaannya mudah, hanya gunakan arahan terbina dalam Vue

Cara terbaik untuk mencapai penskalaan imej menggunakan perpustakaan PHP dan GD Dalam beberapa tahun kebelakangan ini, dengan populariti Internet, pemprosesan imej telah menjadi salah satu fungsi yang diperlukan untuk banyak tapak. Sebagai salah satu keperluan paling biasa dalam pemprosesan imej, penskalaan imej perlu dapat menskalakan saiz imej secara berkadar tanpa kehilangan kualiti imej untuk menyesuaikan diri dengan keperluan paparan yang berbeza. Sebagai bahasa pengaturcaraan sisi pelayan yang biasa, PHP mempunyai banyak perpustakaan pemprosesan imej, yang paling biasa digunakan ialah perpustakaan GD. Pustaka GD menyediakan antara muka yang ringkas namun berkuasa yang boleh digunakan untuk mengendalikan pelbagai operasi imej.

Cara menggunakan PHP untuk membangunkan fungsi penskalaan dan pemangkasan imej ringkas Ringkasan: Pemprosesan imej ialah keperluan biasa dalam pembangunan web Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan fungsi penskalaan dan pemangkasan imej yang ringkas dan menyediakan contoh kod khusus. Dengan mempelajari artikel ini, pembaca boleh memahami cara menggunakan PHP untuk melaksanakan fungsi pemprosesan imej asas dalam aplikasi Web. 1. Pengenalan latar belakang Dalam pembangunan web, kadangkala kita perlu menskala atau memangkas imej untuk disesuaikan dengan reka letak halaman yang berbeza atau memenuhi keperluan tertentu. PHP sebagai

Cara menggunakan HTML, CSS dan jQuery untuk melaksanakan fungsi lanjutan penskalaan imej Pengenalan: Dalam reka bentuk web moden, keindahan dan kebolehsuaian imej adalah sangat penting. Walau bagaimanapun, paparan gambar konvensional selalunya tidak dapat memenuhi keperluan kita. Dalam artikel ini, kami akan memperkenalkan cara menggunakan HTML, CSS dan jQuery untuk melaksanakan beberapa fungsi zum imej lanjutan. Melalui teknologi ini, kami boleh mencapai kesan penskalaan imej tersuai dan menambah lebih banyak interaktiviti pada halaman web kami. Langkah 1: Penanda HTML Mula-mula, kita memerlukan a

Teknik susun atur CSSPositions untuk penskalaan imej Dalam reka bentuk web, penskalaan imej adalah salah satu keperluan biasa. Melalui reka letak CSSPositions, kami boleh mencapai kesan zum imej dan menambah pengalaman visual yang lebih baik pada halaman web. Artikel ini akan memperkenalkan beberapa teknik dan memberikan contoh kod khusus. Gunakan atribut kedudukan untuk menetapkan kedudukan imej: Dalam CSS, anda boleh menggunakan atribut kedudukan untuk menentukan cara sesuatu elemen diletakkan. Dengan menetapkan atribut kedudukan kepada "re

Petua dan kaedah menggunakan CSS untuk mencapai kesan gelembung imej Dalam reka bentuk web, menambah kesan khas pada imej adalah salah satu cara penting untuk meningkatkan pengalaman pengguna. Antaranya, kesan gelembung gambar boleh menambah minat dan interaktiviti pada gambar, menjadikan kandungan web lebih menarik. Artikel ini akan berkongsi beberapa petua dan kaedah untuk menggunakan CSS untuk mencapai kesan gelembung imej, dengan contoh kod khusus. Gunakan elemen kelas pseudo untuk mencipta kesan gelembung Dengan menggunakan elemen kelas pseudo CSS, kita boleh menambah kesan gelembung di atas imej. Kaedah khusus adalah untuk menetapkan pengelas pseudo
