jQuery的bind()方法使用详解


Posted in Javascript onJuly 15, 2015

bind()方法用法详解:

此方法是使用比较频繁的方法之一,虽然在API手册上有着对方法的介绍,但是由于语言简短,例子不够详细,可能会造成不能够完全准确的掌握bind()方法的使用,下面就结合实例介绍一下此方法的使用。

语法格式:

$(selector).bind(type,[data],function(eventObject))

此方法可以为所有匹配元素的特定事件绑定事件处理函数,例如:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>三水点靠木</title>
<style type="text/css">
div{
 width:150px;
 height:40px;
 background-color:blue;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $("#bt").bind("click",function(){$("div").text("三水点靠木")}) 
})
</script>
</head>
<body>
<div>您好</div>
<input type="button" id="bt" value="点击测试代码" />
</body>
</html>

以上代码中,当点击按钮的时候,会将div元素中的文本设置“三水点靠木”。

从bind()方法的语法结构中可以看到,还有一个可选的data参数可供使用,此参数可以作为event.data属性值,传递给事件对象的额外数据对象。

实例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>三水点靠木</title>
<style type="text/css">
div{
 width:150px;
 height:40px;
 background-color:blue;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 var newtext="三水点靠木";
 $("#bt").bind("click",{"mytext":newtext},function(e){
  $("div").text(e.data.mytext);
 }) 
})
</script>
</head>
<body>
<div>您好</div>
<input type="button" id="bt" value="点击测试代码" />
</body>
</html>

以上代码利用data参数为事件处函数的事件对象提供额外的数据进行处理,同样达到了第一个实例的效果。

绑定多个事件:

可以使用链式编程的方式为匹配元素绑定多个事件。代码如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>三水点靠木</title>
<style type="text/css">
div{
 width:150px;
 height:40px;
 background-color:blue;
}
</style>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 var newtext="三水点靠木";
 $("#bt").bind("click",{"mytext":newtext},function(e){
  $("div").text(e.data.mytext);
 }).bind("mouseout",function(){
  alert("欢迎下次光临");
 }) 
})
</script>
</head>
<body>
<div>您好</div>
<input type="button" id="bt" value="点击测试代码" />
</body>
</html>

为按钮绑定了两个事件处理函数,当点击按钮的时候能够重新设置div中的文本,当鼠标离开按钮的时候,会弹出文本框。

使浏览器默认事件失效

例如点击链接跳转到一个指定的地址和点击提交按钮提交表单都是浏览器默认的事件。但是在实际操作过程中,这些默认事件并非我们想要的操作,例如早表单验证没有通过的时候,就不想提交表单。这个时候就需要阻止浏览器默认事件的发生。

代码实例如下:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>三水点靠木</title>
<script type="text/javascript" src="mytest/jQuery/jquery-1.8.3.js"></script>
<script type="text/javascript">
$(document).ready(function(){
 $(":submit").bind("click",function(){
  if($("#username").val()=="")
  {
   alert("用户名不能为空!");
   $("#username").focus();
   return false;
  }
  if($("#pw").val()=="")
  {
   alert("密码不能为空!");
   $("#pw").focus();
   return false;
  }
 })
})
</script>
</head>
<body>
<form action="" name="myform">
<ul>
 <li>用户名:<input type="text" id="username" /></li>
 <li>密码:<input type="password" id="pw" /></li>
 <li><button>提交表单</button></li>
</ul>
</form>
</body>
</html>

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
ASP中用Join和Array,可以加快字符连接速度的代码
Aug 22 Javascript
JavaScript 计算图片加载数量的代码
Jan 01 Javascript
jQuery 事件的命名空间简单了解
Nov 22 Javascript
Javascript玩转继承(三)
May 08 Javascript
学习使用bootstrap基本控件(table、form、button)
Apr 12 Javascript
vue 全选与反选的实现方法(无Bug 新手看过来)
Feb 09 Javascript
Node.js+Express+Mysql 实现增删改查
Apr 03 Javascript
使用vue-router切换页面时,获取上一页url以及当前页面url的方法
May 06 Javascript
Vue项目结合Vue-layer实现弹框式编辑功能(实例代码)
Mar 11 Javascript
JavaScript ECMA-262-3 深入解析(一):执行上下文实例分析
Apr 25 Javascript
js实现省级联动(数据结构优化)
Jul 17 Javascript
详解JavaScript中的链式调用
Nov 27 Javascript
纯JavaScript实现的分页插件实例
Jul 14 #Javascript
javascript实现网页字符定位的方法
Jul 14 #Javascript
JavaScript取得WEB安全颜色列表的方法
Jul 14 #Javascript
jquery获得当前html页面源码的方法
Jul 14 #Javascript
javascript实现动态表头及表列的展现方法
Jul 14 #Javascript
浅谈JSON.parse()和JSON.stringify()
Jul 14 #Javascript
常用jQuery代码分享
Jul 14 #Javascript
You might like
PHP4与PHP5的时间格式问题
2008/02/17 PHP
深入PHP与浏览器缓存的分析
2013/06/03 PHP
phpstrom使用xdebug配置方法
2013/12/17 PHP
PHP批量查询WordPress留言者E-mail地址实现方法
2015/02/15 PHP
深入理解PHP变量的值类型和引用类型
2015/10/21 PHP
PHP基于MySQLI函数封装的数据库连接工具类【定义与用法】
2017/08/11 PHP
laravel 实现设置时区的简单方法
2019/10/10 PHP
在线编辑器的实现原理(兼容IE和FireFox)
2007/03/09 Javascript
javascript jQuery $.post $.ajax用法
2008/07/09 Javascript
javascript json2 使用方法
2010/03/16 Javascript
javascript自启动函数的问题探讨
2013/10/05 Javascript
javascript判断两个IP地址是否在同一个网段的实现思路
2013/12/13 Javascript
jquery中event对象属性与方法小结
2013/12/18 Javascript
JavaScript数组常用方法
2015/03/02 Javascript
基于jQuery实现仿百度首页选项卡切换效果
2016/05/29 Javascript
AngularJs bootstrap详解及示例代码
2016/09/01 Javascript
Vue.js数据绑定之data属性
2017/07/07 Javascript
浅谈原型对象的常用开发模式
2017/07/22 Javascript
js实现页面多个日期时间倒计时效果
2019/06/20 Javascript
Vue中rem与postcss-pxtorem的应用详解
2019/11/20 Javascript
如何基于layui的laytpl实现数据绑定的示例代码
2020/04/10 Javascript
vue keep-alive的简单总结
2021/01/25 Vue.js
go语言计算两个时间的时间差方法
2015/03/13 Python
Python 调用Java实例详解
2017/06/02 Python
python利用Excel读取和存储测试数据完成接口自动化教程
2020/04/30 Python
python的json包位置及用法总结
2020/06/21 Python
详解canvas drawImage()方法绘制图片不显示的问题
2018/10/08 HTML / CSS
详解基于 Canvas 手撸一个六边形能力图
2019/09/02 HTML / CSS
HTML5实现晶莹剔透的雨滴特效
2014/05/14 HTML / CSS
HTML5拖拉上传文件的简单实例
2017/01/11 HTML / CSS
往来会计岗位职责
2013/12/19 职场文书
IT工程师岗位职责
2014/07/04 职场文书
校园环保广播稿(3篇)
2014/09/15 职场文书
公诉意见书范文
2015/06/05 职场文书
解决MultipartFile.transferTo(dest) 报FileNotFoundExcep的问题
2021/07/01 Java/Android
Django数据库(SQlite)基本入门使用教程
2022/07/07 Python