在我的网站的一个部分,单击按钮(函数LoadPic())将所选用户的照片(userpic)加载到给定尺寸的div(PicHolder)中。根据我的网站的需要,加载的图片(userpic)在为其个人资料上传照片时,其尺寸必须小于用户的图库/个人资料图片尺寸。默认图像(没有上传的用户个人资料照片= 图像/ NoPic.jpg )可以通过图形程序轻松调整我的大小(到 images / NoPicSmall.jpg )。对于网站速度,我最好在LoadPic()的innerHTML中调整所有加载的图像(包括默认图像NoPic.jpg)(使用较少的代码行),如下所示:
function LoadPic(userpic) {
document.getElementById('PicHolder').innerHTML = '<img src="' + userpic + '"
style="width:60px;height:66px" alt="user picture">';
}
或者为了将 images / NoPic.jpg 作为图像的用户,为了保持图像大小调整而编写一些额外的代码行?
function LoadPic(userpic) {
if (userpic === 'images/NoPic.jpg') {
document.getElementById('PicHolder').innerHTML = '<img
src="images/NoPicSmall.jpg" alt="user picture">';
}
else {
document.getElementById('PicHolder').innerHTML = '<img src="' + userpic + '"
style="width:60px;height:66px" alt="user picture">';
}
}//End function
我的理解是图像大小调整在计算上相对昂贵,因此我可以在任何地方加载尺寸已经正确的图像,这是值得的。换句话说,在第二功能中不调整默认用户图像大小的计算节省将比编写更多代码行更有利。我离开这里了吗?谢谢你的帮助!
答案 0 :(得分:1)
如果您有一些代码服务器端上传肖像,那么您应该调整图像大小。
调整大小计算花费的时间可以忽略不计,但用于图片的内存和图像下载时间更是个问题。
如果某个用户上传1 TB的图片,则应将其缩小到服务器上的正确尺寸,以便浏览器不会获得1Tb下载并存储在内存中,只是为了在最后显示一些像素。 / p>
对于images/NoPic.jpg
,嗯......你应该在某个地方有一堆用户个人资料信息,所以你可以简单地保留一条告诉用户尚未上传任何肖像的信息,并提供你的{{1那种情况下的形象。