JQuery实现Ajax加载图片的方法

前端之家收集整理的这篇文章主要介绍了JQuery实现Ajax加载图片的方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了JQuery实现Ajax加载图片方法分享给大家供大家参考,具体如下:

最近在学习JQuery,想从原理上模拟一下无刷新的相册浏览。

最先想到的思路是利用缓存,也就是先显示提示消息,然后get图片,在get完的时候回调,将img标签的src改掉,由于刚刚get过,有了缓存,所以图片会立刻显示出来。

页面元素:

按钮的事件绑定:

代码如下:
定义了一个数组PicArr用来记录所有图片

NextPic内容

4) CurrPic=0; });

在CHROME和FF下显示正常,IE6下异常,IE7、8未测试。

后来在ASPRAIN的开发者 稽山草 的帮助下,思路改成了先改src,然后绑定onload事件,在onload中回调。

核心代码

4)CurrPic=0;});

后来一看基本正常了,但是仔细看还是不正常,图片顺序开始乱跳,跟踪了好久发现回调函数会多次运行。

中间想到会不会是事件绑定的问题,因为onclick事件的绑定是

代码如下:
可以简写成
代码如下:
想到$(Element).bind("load",callback)和$(Element).load(url,callback)会不会是一样,查资料写得都不怎么清楚,改了试一下,还是不一样,不过在chrome和ff下依然能工作,但是数据不太正常,IE下报错。

再次检查 稽山草 给的代码,发现问题在哪了。

load事件的绑定的是一个匿名函数,而当按钮按下时会再次绑定,所以会重复执行。于是将绑定bind改成one搞定。最终完整代码如下:

JQUERY动态加载<a href="https://www.jb51.cc/tag/tupian/" target="_blank" class="keywords">图片</a>

希望本文所述对大家jQuery程序设计有所帮助。

原文链接:https://www.f2er.com/ajax/50926.html

猜你在找的Ajax相关文章