最近在开发一个项目的时候遇到一个jQuery的缓存问题
环境:
一个邮件系统,当点击一个邮件时使用ajax打开,用JS改变邮件图标为已读。
有一个功能,即是点击邮件图标时使图标变成选中状态:
$j(document).ready(
function(){
$j(".mailSelecter").each(
function(){
$j(this).toggle(
function(){
var src = $j(this).attr("src");
if(src=="/Content/images/mail_opened.gif")
$j(this).attr("src","/Content/images/mail_opened_selected.gif");
else
$j(this).attr("src","/Content/images/mail_new_selected.gif");
},
function(){
var src = $j(this).attr("src");
if(src=="/Content/images/mail_opened_selected.gif")
$j(this).attr("src","/Content/images/mail_opened.gif");
else
$j(this).attr("src","/Content/images/mail_new.gif");
}
);
}
);
}
);
会发现,如果查看未阅读的邮件时,用jQuery将图片变成已读的图标,但是在上面代码中,jQuery的缓存中,刚刚查看的那封邮件的图标还是未读的图标,所以,选中时,还是使用:
$j(this).attr("src","/Content/images/mail_new_selected.gif");
期望:
$j(this).attr("src","/Content/images/mail_opened_selected.gif");
相关推荐
在探讨“清除Jquery缓存”的话题之前,我们先来了解一下jQuery是什么以及为什么需要清除缓存。 ### jQuery简介 jQuery是一款流行的JavaScript库,它极大地简化了HTML文档的遍历、事件处理、动画以及Ajax交互等操作...
针对这个问题,有几种解决方法可以避免jQuery的缓存问题。 1. **设置`.ajax`方法的`cache`参数为`false`** 当使用`.ajax`进行Ajax请求时,可以通过设置`cache`选项为`false`来禁用缓存。这将告诉浏览器不要存储...
一、jQuery缓存简介 jQuery提供了一个便利的功能,即`$(selector)`,用于选取DOM元素。然而,每次调用此函数都会执行一次DOM查询,这在页面元素众多或者频繁操作时可能导致性能下降。为了解决这个问题,jQuery引入...
**jQuery 图片缓存插件与脚本** 在网页设计中,图片的加载速度往往对用户体验有着重大影响。当用户浏览网页时,如果图片加载缓慢,可能会导致页面显得卡顿,影响用户对网站的整体评价。为了解决这个问题,开发者...
jQuery数据缓存是一种高效的方法,用于在DOM元素上存储和检索数据,同时避免了JavaScript中的内存泄漏问题,尤其是与DOM元素绑定时常见的循环引用风险。本文将深入探讨jQuery的`data()`方法及其相关使用规范。 一、...
ASP.NET MVC中使用jQuery时的浏览器缓存问题详解 ASP.NET MVC中使用jQuery时的浏览器缓存问题详解是指在ASP.NET MVC应用程序中使用jQuery库进行Ajax请求时遇到的浏览器缓存问题。浏览器缓存是指浏览器将服务器端...
AJAXCache插件的引入,解决了这个问题,它允许开发者将某些AJAX请求的结果存储在本地,当下次遇到相同的请求时,可以直接从缓存中读取,避免了不必要的服务器交互。 使用AJAXCache插件,开发者可以自定义哪些AJAX...
### jQuery缓存数据功能知识点 jQuery作为一个流行的JavaScript库,提供了强大的数据缓存功能,允许开发者在不同的对象上存储和管理数据。本文将详细介绍jQuery的缓存数据功能,包括其方法的使用、实现原理及应用...
在本篇jQuery学习记录中,我们将探讨两个关键的前端开发问题:页面缓存与中文处理。这两个主题在构建高效、用户友好的Web应用时都起着至关重要的作用。 首先,让我们深入了解页面缓存。在Web应用中,缓存是一种优化...
静态html+Jquery+缓存实现日志存储记录和删除
本项目“jQuery本地缓存添加记录列表特效”利用jQuery实现了一个功能,即在用户浏览数据记录时,将这些记录存储在本地,以便于快速加载和呈现,提升用户体验。这个特效涉及到的主要知识点包括jQuery、CSS样式以及...
数据缓存系统最早应该是jQuery1.2引入的,那时它的事件系统完成照搬DE大神的addEvent.js,而addEvent在实现有个缺憾,它把事件的回调都放到EventTarget之上,这会引发循环引用
文章通过代码示例演示了一个处理AJAX缓存问题的函数`ajax_show`。在这个函数中,使用了`$.ajax`方法向服务器请求数据。`cache`参数未明确设置,因此它会使用jQuery默认的缓存行为。在Firefox中,为了实现类似IE浏览...
**jQuery Session & Cookie缓存插件详解** 在Web开发中,数据存储是不可或缺的一部分,而Session和Cookie作为客户端与服务器之间交互数据的重要手段,经常被用于实现用户状态管理。jQuery库提供了一些方便的方法来...