jQuery中bind()方法中的参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery中bind()方法中的参数相关的知识,希望对你有一定的参考价值。
在jquery中,bind()方法有3个参数,即事件类型、可选参数、处理函数。请问,第一个参数的类型包括什么?又是如何使用的呢?
bind() 方法为被选元素添加一个或多个事件处理程序,并规定事件发生时运行的函数。其语法为:
$(selector).bind(event,data,function)参数说明如下:
event:规定添加到元素的一个或多个事件。必需。
data: 规定传递到函数的额外数据。可选。
function: 规定当事件发生时运行的函数。必需。
示例如下:
// 当点击鼠标时,隐藏或显示 p 元素:$("button").bind("click",function()
$("p").slideToggle();
); 参考技术A 我知道常用的类型包括:blur、focus、load、resize、scroll、unload、click、dblclick、mousedown、mouseup、mousemove、mouseover、mouseout、mouseenter、mouseleave、change、select、submit、keydown、keydown、keypress、keyup、error等等。本回答被提问者采纳 参考技术B 常用的bind绑定的事件方法有:click、dblclick、mousedown、mouseup、mousemove、mouseover、mouseout、mouseenter、mouseleave、change、select、blur、focus、load、resize、scroll.
不常用的有。unload、submit、keydown、keydown、keypress、keyup、error
bind()方法中的参数有以下几种方法
方法一、
function GetCode(event) alert(event.data.foo)
$(document).ready(function() $("#summary").bind("click", foo:'abc' ,GetCode); );
方法二、函数句柄
$("#summary").bind("click", function()GetCode("abc"));
function GetCode(str)
方法三、函数闭包
function GetCode(str) return function() alert(str)
$("#summary").bind("click", GetCode("abc")); 参考技术C keydown
mouseover
click
mouseup
mousemove....追问
能举出二十多种以上吗?常用的、不常用的
Jquery中的bind()方法的一点问题
bind()方法绑定事件的时候,第二个参数是函数,如果代码都写在函数里面,没有任何问题。但是,直接调用外部封装的函数需要注意,出错的例子:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <div>点我</div> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> $("div").bind("click",function(){popWindow()}); //弹窗测试函数 function popWindow(){ alert("弹窗方法执行了...") } </script> </body> </html>
上面这个例子打开网页立即弹窗,说明外部的函数立马执行了。当我们点击div的时候,没反应了。。。
在匿名函数里面调用外面封装的函数就没有问题了,例子:
<!doctype html> <html> <head> <meta charset="utf-8"> <title>无标题文档</title> </head> <body> <div>点我</div> <script src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script> <script> $("div").bind("click", popWindow()); function popWindow(){ alert("弹窗方法执行了...") } </script> </body> </html>
这样就正常了。
Jquery还有许多这样的例子,都是一样的解决办法。
以上是关于jQuery中bind()方法中的参数的主要内容,如果未能解决你的问题,请参考以下文章