今天在做jquery相册的时候,点击过快会造成图片不显示
因为图片地址是经过jquery ajax从数据中获取的地址,操作过快直接导致图片宽度和高度为0px;
在加载之前我处理过图片的信息,就是宽度和高度的的问题,如果过大会通过image()来处理,当过快就是没有处理完,直接显示“0px"了
最后查看了相关的资料通过以下方法解决了ajax加载图片无法完全加载的问题.
首先来看一下百度知道里面的提问
[php]
我用ajax请求服务器端返回了一个数组,里面是图片的src
array(
'src1',
'src2'
...
)
ajax返回成功后要在页面上用这些src生成新的img元素,我想在这些新生成的img都加载完之后,执行一些动作,该怎么做呢? 求教!!谢谢
[/php]
回答:
[php]
先一个个push去插入图片,在最后个图片时,触发判断加载函数;
在函数里边去加载最后个图片的onload事件即可;
参考下原生的js写法:
var n = new Imag...
今天 在修改 爱琴海婚纱 网站的时候,有一个相当于相册的地方要求修改,
以前图片变形,上下不居中。
很多地方都要用到图片上下居中的,这里查找 了一个js 的function供大家研究
/**
* 根据要求的大小来判断,等比例截取原始图片
* 在各个浏览器都看了一下,都支持这个Image()
**/
//图片按比例缩放
var flag=false;
function DrawImage(ImgD,iwidth,iheight){
//参数(图片,允许的宽度,允许的高度)
var image=new Image();
image.src=ImgD.src;
if(image.width > 0 && image.height > 0){
flag=true;
if(image.width/image.height >= iwidth/iheight){
if(image.width>iwidth){
ImgD.width=iwidth;
Im...