2010-08-06 96 views
0

几天前,我想知道为什么当我将网站上的图片宽度和长度属性设置为百分比时,并不是按照我认为应该的方式缩放图片。jQuery图片大小出错了!

问题是我想让它缩小图像,但它实际上缩小了图像的容器。

无论如何,我确实喜欢Pat建议使用jQuery片段调整图像大小,因为我可以很容易地将它应用于我的所有具有fancybox类的图像,换句话说,我的产品图像,点击后,显示fancybox效果。

但是,由于某种原因,它表现出一种扭曲。

如果您指向浏览器,那么您可以在我的页面上查看问题,在http://www.marioplanet.com/product.htm处可能会看到问题。

如果您之前访问过我的网站以帮助我进行调试,我很感激,请确保您删除了我的网站的Cookie,并清空缓存,因为它似乎只在第一次访问时出现问题。

这个问题似乎是为不同的浏览器有所不同:

火狐(3.6.8)和IE(8):下面的粗体字写着:“分类毛绒”里的图像应适当调整,他们是方式小。

Chrome(5.0.375.125)和Safari(5):在图像应该是所在的同一粗体文本下面,只有两个轮廓正方形,没有其他内容。

,我就发现不更新代码的“修正”似乎是:

火狐(3.6.8)和IE(8):一个简单的刷新,并且图像回去大小我希望他们第一次访问。

Chrome(5.0.375.125)和Safari(5):通过将这两个浏览器指向网址http://www.marioplanet.com/product.htm#,可以通过添加井号(#)或点击“关注我们” “社交网络托盘,图片的大小将按照我希望他们第一次访问的方式进行。

所以,我在想,关于jQuery代码片段,或许.width()操作没有得到广泛的支持,谷歌搜索没有结果,并没有任何意义,没有任何意义,跨越任何工作主要浏览器。

那么,我想或许jQuery的代码片段不在$(document).ready事件处理程序中,所以DOM以及图像没有正确加载。在调查我的代码后,所有内容看起来好像是

最后,我想知道如果我的图像上剩余的大小已经搞砸了jQuery调整大小,一切似乎再好,但也许它与表和表行和单元格的宽度?

任何有关问题的建议或想法将不胜感激!

谢谢!

回答

1

问题确实是您$(document).ready处理程序,当这个运行DOM准备就绪后,图像可能不会,而且很可能不会是第一负载。它重新加载的原因是图像被缓存,所以即时加载。

这里有一个简单的办法解决这一本,虽然,而不是$(document).ready使用window.onload事件,像这样:

$(window).load(function() { 
    //code that needs images 
}); 

的主要区别是,onload运行后载入图像,所以.width()会给你正确的值,而不是0

+0

非常感谢!完善! – Qcom 2010-08-09 02:11:00