JavaScript和JQuery实用代码片段(一) - Web前端
作者:98wpeu发布时间:2026-10-09分类:网页前端技术浏览:22
导读:(一)怎样用JQuery刷新一幅图片?说明:我们都知道,当我们在请求一个资源(比如网页,图片等)的时候,如果该资源被缓存到浏览器了,那么请求返回的就是缓存的副本,不是我们希望获取...
(一)怎样用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
期待大家补充,哈哈!
说明:我们都知道,当我们在请求一个资源(比如网页,图片等)的时候,如果该资源被缓存到浏览器了,那么请求返回的就是缓存的副本,不是我们希望获取的资源(该资源内容已经被更新了),此时最普遍的一个办法就是在请求的页面后面或者图片的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
期待大家补充,哈哈!
相关推荐
- jQuery ajax serialize() 方法使用示例 - Web前端
- JS遮罩层效果 兼容ie firefox jQuery遮罩层 - Web前端
- ASP.NET MVC中EasyUI的datagrid跨域调用实现代码 - Web前端
- EasySlider 基于jQuery功能强大简单易用的滑动门插件 - Web前端
- 使用jQuery轻松实现Ajax的实例代码 - Web前端
- 基于jquery的获取mouse坐标插件的实现代码 - Web前端
- 关于Jqzoom的使用心得 jquery放大镜效果插件 - Web前端
- 一个简单的jQuery插件制作 学习过程及实例 - Web前端
- Jquery ajax不能解析json对象,报Invalid JSON错误的原因和解决方法 - Web前端
- jquery 批量上传图片实现代码 - Web前端
- 网页前端技术排行
-
- 1[Web前端]用javascript实现默认图片替代未显示的图片 - Web前端
- 2分析Iconfont-阿里巴巴矢量常用图标库 - Web前端
- 3jQuery实例教程:制作网页中可折叠的面板 - Web前端
- 4【第六章】Foundation之按钮和下拉功能 - Web前端
- 5基于jquery的滚动条滚动固定div(附演示下载) - Web前端
- 6jQuery编写widget的一些技巧分享 - Web前端
- 7分享精心挑选的12款优秀jQuery Ajax分页插件和教程 - Web前端
- 8jQuery实现鼠标移到元素上动态提示消息框效果 - Web前端
- 9在Mac/PC上远程调试iPhone/iPad上的网页 - Web前端
- 最近发表
-
- WordPress随机显示特色图片插件:Random Post Thumbnails
- KeePass实现Chrome浏览器自动填充密码方法一
- LNMP一键包nginx 301强制跳转到https教程
- KeePass实现Chrome浏览器自动填充密码方法二
- #建站# 免费的VPS管理软件Xshell8/Xftp8中文版下载
- 使用Xshell 8连接VPS教程_电脑登录vps的方法
- WordPress评论界面添加烟花????效果
- 不同浏览器书签同步方案:坚果云+Floccus_详细使用教程
- iOS端KeePassXC客户端APP:Strongbox Password Safe
- 给WordPress评论中的Gravatar头像图片添加ALT属性


