不同的jQuery API来处理不同的浏览器事件


Posted in Javascript onDecember 09, 2012

在今天的网络浏览器处理事件是有点困难的一部分,不同的浏览器以不同的方式处理事件。因此,要克服这些跨浏览器的问题,人们可以利用jQuery的事件处理API。

jQuery是一个小的JavaScript库,提供了广大的API来处理不同的浏览器事件和效果和更大量。阅读更多有关处理使用JavaScript浏览器的用户界面效果。在本教程中,我们将探讨不同的API jQuery来处理不同的浏览器事件。
Page Load事件
就绪(FN),
这是所有类型的事件,jQuery的支持的基础上。你可能想设置形式的焦点,当页面被载入或做一些UI效果。

$(document).ready(function () { 
$("p").text("The DOM is now loaded and can be manipulated."); 
});

事件处理
绑定(类型,数据,FN),
您可能要绑定一个处理一个或多个事件的任何元素(单击/双击等)。使用此功能结合custome任何元素的事件处理程序。
$("p").bind("click", function(e) { 
var str = "( " + e.pageX + ", " + e.pageY + " )"; 
$("span").text("Click happened! " + str); 
}); 
$("p").bind("dblclick", function() { 
$("span").text("Double-click happened in " + this.tagName); 
}); 
$("p").bind("mouseenter mouseleave", function(e) { 
$(this).toggleClass("over"); 
});

触发(事件,资料)
触发每一个匹配的元素上的事件,
这也将导致浏览器具有相同的名称(如果存在的话)要执行的默认操作。例如,通过触发()的功能也将导致浏览器提交表单的“提交”。返回绑定到事件的职能之一虚假的默认行为是可以预防的。
触发的事件并不局限于基于浏览器的事件,你也可以自定义事件触发绑定注册。
$("button:first").click(function () { 
update($("span:first")); 
}); 
$("button:last").click(function () { 
$("button:first").trigger('click'); 
update($("span:last")); 
}); 
function update(j) { 
var n = parseInt(j.text(), 10); 
j.text(n + 1); 
}

交互辅助活动
在今天的Web 2.0应用程序,用户intraction处理是非常重要的。jQuery提供了一些API,可以用来处理这些相互作用。悬停(多出)此功能提供了悬停功能,即当鼠标光标移动到一个匹配的元素,第一个指定的功能被解雇。当鼠标移动的元素,第二个指定的功能火灾。此外,检查的地方看到,如果鼠标仍然是在指定的元素(例如,一个div里面的图像),如果是这样,它会继续“徘徊”,并没有迁出(一种常见的在使用mouseout事件处理程序)的错误。
$("li").hover( 
function () { 
$(this).append($("<span> ***</span>")); 
}, 
function () { 
$(this).find("span:last").remove(); 
} 
);

辅助其他活动
以下是功能,可用于处理不同类型的事件清单。
模糊()
:触发​​每一个匹配元素的blur事件。
$("input").blur(function () { 
$(this).next("span").css('display','inline').fadeOut(1000); 
}); 
模糊(FN) 
:每一个匹配元素的blur事件中绑定一个处理函数。 
[code] 
$("input").blur(function () { 
$(this).next("span").css('display','inline').fadeOut(1000); 
});

(FN)
:每一个匹配元素的change事件中绑定一个功能。
$("select").change(function () { 
var str = ""; 
$("select option:selected").each(function () { 
str += $(this).text() + " "; 
}); 
$("div").text(str); 
}) 
.change();

点击(FN)
:绑定到每一个匹配元素的click事件的功能。
$("p").click(function () { 
$(this).slideUp(); 
}); 
$("p").hover(function () { 
$(this).addClass("hilite"); 
}, function () { 
$(this).removeClass("hilite"); 
});

双击(FN)
:触发​​每一个匹配元素的DblClick事件。
var divdbl = $("div:first"); 
divdbl.dblclick(function () { 
divdbl.toggleClass('dbl'); 
});

按键(FN)
:每一个匹配元素的keypress事件中绑定一个功能。
$("input").keypress(function (e) { 
if (e.which == 32 || (65 <= e.which & e.which <= 65 + 25) 
|| (97 <= e.which && e.which <= 97 + 25)) { 
var c = String.fromCharCode(e.which); 
$("p").append($("<span/>")) 
.children(":last") 
.append(document.createTextNode(c)); 
} else if (e.which == 8) { 
// backspace in IE only be on keydown 
$("p").children(":last").remove(); 
} 
$("div").text(e.which); 
});

的mousedown(FN)
:绑定到每一个匹配元素的mousedown事件的功能。
$("p").mouseup(function(){ 
$(this).append('<span style="color:#F00;">Mouse up.</span>'); 
}).mousedown(function(){ 
$(this).append('<span style="color:#00F;">Mouse down.</span>'); 
});

滚动(FN)
:每一个匹配元素的scroll事件中绑定一个处理函数。
$("p").clone().appendTo(document.body); 
$("p").clone().appendTo(document.body); 
$("p").clone().appendTo(document.body); 
$(window).scroll(function () { 
$("span").css("display", "inline").fadeOut("slow"); 
});
Javascript 相关文章推荐
Riot.js 快速的JavaScript单元测试框架
Nov 09 Javascript
js中window.open打开一个新的页面
Aug 10 Javascript
jQuery+CSS3折叠卡片式下拉列表框实现效果
Nov 02 Javascript
JavaScript高级教程5.6之基本包装类型(详细)
Nov 23 Javascript
后端接收不到AngularJs中$http.post发送的数据原因分析及解决办法
Jul 05 Javascript
Angularjs为ng-click事件传递参数
Jun 15 Javascript
微信小程序实现给嵌套template模板传递数据的方式总结
Dec 18 Javascript
Node Puppeteer图像识别实现百度指数爬虫的示例
Feb 22 Javascript
Vue.js 表单控件操作小结
Mar 29 Javascript
jQuery中的for循环var与let的区别
Apr 21 jQuery
纯javascript实现选择框的全选与反选功能
Apr 08 Javascript
WebWorker 封装 JavaScript 沙箱详情
Nov 02 Javascript
addEventListener和attachEvent二者绑定的执行函数中的this不相同
Dec 09 #Javascript
Javascript获取窗口(容器)的大小及位置参数列举及简要说明
Dec 09 #Javascript
定义JavaScript二维数组采用定义数组的数组来实现
Dec 09 #Javascript
javascript操作JSON的要领总结
Dec 09 #Javascript
js写一个弹出层并锁屏效果实现代码
Dec 07 #Javascript
JavaScript之Getters和Setters 平台支持等详细介绍
Dec 07 #Javascript
缓动函数requestAnimationFrame 更好的实现浏览器经动画
Dec 07 #Javascript
You might like
用PHP实现递归循环每一个目录
2010/08/08 PHP
js宝典学习笔记(上)
2007/01/10 Javascript
javascript 数组排序函数
2009/08/20 Javascript
jQuery EasyUI 的EasyLoader功能介绍
2010/09/12 Javascript
基于JQuery实现相同内容合并单元格的代码
2011/01/12 Javascript
jQuery菜单插件superfish使用指南
2015/04/21 Javascript
jQuery实现带动画效果的多级下拉菜单代码
2015/09/08 Javascript
JS短信验证码倒计时功能的实现(没有验证码,只有倒计时)
2016/10/27 Javascript
JS小数转换为整数的方法分析
2017/01/07 Javascript
jquery获取select,option所有的value和text的实例
2017/03/06 Javascript
浅谈vuepress 踩坑记
2018/04/18 Javascript
vue实现学生录入系统之添加删除功能
2018/07/11 Javascript
Vue编写可显示周和月模式的日历 Vue自定义日历内容的显示
2019/06/26 Javascript
bootstrap table列和表头对不齐的解决方法
2019/07/19 Javascript
vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)
2019/08/17 Javascript
layui前端时间戳转化实例
2019/11/15 Javascript
[54:45]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 Optic vs OG
2018/04/02 DOTA
python+pygame简单画板实现代码实例
2017/12/13 Python
pyqt5 使用label控件实时显示时间的实例
2019/06/14 Python
TensorFlow实现从txt文件读取数据
2020/02/05 Python
Python开发之pip安装及使用方法详解
2020/02/21 Python
详解Html5 Canvas画线有毛边解决方法
2018/03/01 HTML / CSS
采用专利算法搜索最廉价的机票:CheapAir
2016/09/10 全球购物
葡萄牙鞋子品牌:Fair
2016/12/10 全球购物
经典c++面试题六
2012/01/18 面试题
红旗团支部事迹材料
2014/01/27 职场文书
2014年大学庆元旦迎新年活动方案
2014/03/09 职场文书
2014年幼儿园保育工作总结
2014/12/02 职场文书
2014年房地产个人工作总结
2014/12/20 职场文书
2014年度考核工作总结
2014/12/24 职场文书
2015年挂职锻炼个人总结
2015/10/22 职场文书
2016新教师培训心得体会范文
2016/01/08 职场文书
JavaScript 语句之常用 for 循环详解
2021/03/29 Javascript
Python语言规范之Pylint的详细用法
2021/06/24 Python
国庆节到了,利用JS实现一个生成国庆风头像的小工具 详解实现过程
2021/10/05 Javascript
教你使用Python获取QQ音乐某个歌手的歌单
2022/04/03 Python