JavaScript和JQuery实用代码片段(一)


Posted in Javascript onApril 07, 2010

(一)怎样用JQuery刷新一幅图片?
说明:我们都知道,当我们在请求一个资源(比如网页,图片等)的时候,如果该资源被缓存到浏览器了,那么请求返回的就是缓存的副本,不是我们希望获取的资源(该资源内容已经被更新了),此时最普遍的一个办法就是在请求的页面后面或者图片的src后面加上一个查询字符串"ran=" + Math.random(),这样就会请求到最新版本的资源啦!
代码:

$(imageObj).attr('src',$(imageObj).attr('src') + '?' + Math.random());

(二)怎样用JQuery查看一幅图片是否被完全加载?
说明:在一个页面未加载完全的时候调用JavaScript操作常常会失败,因为此时DOM未解析完毕。可以在windoiw.onload方法中执行要执行的JavaScript/JQuery方法(此时图片肯定加载完成,可以获取其高度等属性),也可以在$(function(){})中执行(此时DOM虽解析完毕,但是所请求的资源未必全部加载完成)。
如果在使用图片之前,要事先检测图片是否加载完成,可以采用如下的代码:
代码:
var imgsrc = "img/img.png"; 
$(imageObj).load(function() 
{ 
alert('图片加载完成'); 
}).error(function() 
{ 
alert('图片加载出错'); 
}).attr('src',imgsrc);

(三)怎样用JQuery查看多幅幅图片是否被完全加载?
说明:说明如上,加入你页面有十幅图片要加载,此时可以设置一个变量记录加载图片数,当该变量等于总的图片数时,加载就大功告成了!
var totalImages = 10; 
var loadedImages = 0; 
$('img').load(function() 
{ 
++loadedImages; //此处为闭包 
if(loadedImages == totalImages) 
{ 
alert('所有图片加载完毕!'); 
} 
});

(四)怎样用JQuery对无序列表(ul)排序?
说明:有时候我们需要对一个无序列表(ul)排序(当然可以用有序列表ol),但是ul能够提供更多定制功能,且能自定义排序器。
代码:(1)待排序列表为:
<ul class='to_order'> 
<li>cloud</li> 
<li>sun</li> 
<li>rain</li> 
<li>snow</li> 
</ul>

(2)JQuery代码为:
var items = $('.to_order li').get(); //获取所有待排序li 
items.sort(function(a,b) //调用javascript内置函数sort,参数为一闭包函数,也就是排序器 
{ 
var keyA = $(a).val(); 
var keyB = $(b).val(); 
if(keyA < keyB) return -1; 
if(keyA > keyB) return 1; 
return 0; 
}); 
var ul = $('.to_order'); 
$.each(items,function(i,li) //此时items为排好队的集合 
{ 
ul.append(li); 
});

(五)怎样禁止鼠标右键(contextmenu)?
说明:有时候我们希望用户不能使用鼠标右键,从而避免复制,另存为等行为。
$(function(){ 
$(document).bind('contextmenu',function(e){ 
return false; 
}); 
});

(六)怎样实现一幅图片淡出(FadeOut)后,另一幅图片淡入(FadeIn)的效果?
说明:是时候展现一些比较cool效果了,淡入淡出的效果可以采用JQuery的FadeIn和FadeOut效果来实现。
$('img').fadeOut(function(){ 
$(this).load(function(){ 
$(this).fadeIn(); 
}).attr('src',AnotherSource); 
});

(七)检测一个DOM对象是否存在?
说明:在对一个DOM对象操作前,先检测其是否存在。
//方法一 
if($('#elementId').length) 
{ 
//存在 
} 
//方法二 
if($('#elementId').size() > 0) 
{ 
//存在 
} 
//方法三 
if($('#elementId')[0]) 
{ 
//存在 
} 
//方法四~方法N 
期待大家补充,哈哈!
Javascript 相关文章推荐
YUI的Tab切换实现代码
Apr 11 Javascript
javascript中String类的subString()方法和slice()方法
May 24 Javascript
js去除空格的12种实用方法
Nov 08 Javascript
解决JS中乘法的浮点错误的方法
Jan 03 Javascript
javaScript使用EL表达式的几种方式
May 27 Javascript
js实现div弹出层的方法
Nov 20 Javascript
javascript的switch用法注意事项分析
Feb 02 Javascript
jQuery 更改checkbox的状态,无效的解决方法
Jul 22 Javascript
jquery插件锦集【推荐】
Dec 16 Javascript
详谈js中window.location.search的用法和作用
Feb 13 Javascript
微信小程序日历弹窗选择器代码实例
May 09 Javascript
浅谈鸿蒙 JavaScript GUI 技术栈
Sep 17 Javascript
jquery 学习笔记一
Apr 07 #Javascript
ext jquery 简单比较
Apr 07 #Javascript
jQuery asp.net 用json格式返回自定义对象
Apr 07 #Javascript
FileUpload 控件 禁止手动输入或粘贴的实现代码
Apr 07 #Javascript
js 小贴士一星期合集
Apr 07 #Javascript
Javascript 实用小技巧
Apr 07 #Javascript
javascript 函数使用说明
Apr 07 #Javascript
You might like
php download.php实现代码 跳转到下载文件(response.redirect)
2009/08/26 PHP
PHP运行环境配置与开发环境的配置(图文教程)
2013/06/04 PHP
PHP file_get_contents设置超时处理方法
2013/09/30 PHP
将酷狗krc歌词解析并转换为lrc歌词php源码
2014/06/20 PHP
PHP进程同步代码实例
2015/02/12 PHP
php字符串函数学习之strstr()
2015/03/27 PHP
php中array_column函数简单实现方法
2016/07/11 PHP
php取出数组单个值的方法
2018/03/12 PHP
php字符串截取函数mb_substr用法实例分析
2019/06/25 PHP
详解CSS样式中的 !important * _ 符号
2021/03/09 HTML / CSS
JScript中使用ADODB.Stream判断文件编码的代码
2008/06/09 Javascript
学习面向对象之面向对象的基本概念:对象和其他基本要素
2010/11/30 Javascript
js判断undefined变量类型使用typeof
2013/06/03 Javascript
JS加jquery简单实现标签元素的显示或隐藏
2013/09/23 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
node.js中的path.delimiter方法使用说明
2014/12/09 Javascript
javascript中this关键字详解
2016/12/12 Javascript
微信小程序 动态传参实例详解
2017/04/27 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
2018/07/03 Javascript
webpack4 从零学习常用配置(小结)
2019/05/28 Javascript
vue 调用 RESTful风格接口操作
2020/08/11 Javascript
[02:07]DOTA2新英雄展现中国元素,完美“圣典”亮相央视
2016/12/19 DOTA
Python进阶_关于命名空间与作用域(详解)
2017/05/29 Python
django站点管理详解
2017/12/12 Python
Python实现的FTP通信客户端与服务器端功能示例
2018/03/28 Python
numpy.std() 计算矩阵标准差的方法
2018/07/11 Python
学生信息管理系统Python面向对象版
2019/01/30 Python
Python小程序之在图片上加入数字的代码
2019/11/26 Python
Tensorflow中批量读取数据的案列分析及TFRecord文件的打包与读取
2020/06/30 Python
EJB的激活机制
2013/10/25 面试题
完整版商业计划书
2014/09/15 职场文书
官僚主义现象查摆问题整改措施
2014/10/04 职场文书
资金申请报告范文
2015/05/14 职场文书
五年级作文之想象作文
2019/10/30 职场文书
Vue中Object.assign清空数据报错的解决方案
2022/03/03 Vue.js
Python first-order-model实现让照片动起来
2022/06/25 Python