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 相关文章推荐
JavaScript 小型打飞机游戏实现原理说明
Oct 28 Javascript
各种页面定时跳转(倒计时跳转)代码总结
Oct 24 Javascript
javascript实现随时变化着的背景颜色
Apr 02 Javascript
js实现随屏幕滚动的带缓冲效果的右下角广告代码
Sep 04 Javascript
深入学习jQuery Validate表单验证(二)
Jan 18 Javascript
jQuery实现多张图片上传预览(不经过后端处理)
Apr 29 jQuery
浅谈微信小程序flex布局基础
Sep 10 Javascript
js实现同一个页面,多个enter事件绑定的示例
Oct 10 Javascript
JS/HTML5游戏常用算法之追踪算法实例详解
Dec 12 Javascript
在vue项目中引入highcharts图表的方法
Jan 21 Javascript
浅谈Webpack4 Tree Shaking 终极优化指南
Nov 18 Javascript
vant组件中 dialog的确认按钮的回调事件操作
Nov 04 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
PHP学习资料汇总与网址
2007/03/16 PHP
用PHP和Shell写Hadoop的MapReduce程序
2014/04/15 PHP
分享最受欢迎的5款PHP框架
2014/11/27 PHP
php函数实现判断是否移动端访问
2015/03/03 PHP
PHP图像识别技术原理与实现
2016/10/27 PHP
PHP getName()函数讲解
2019/02/03 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
2020/01/04 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
2020/02/12 PHP
模仿JQuery sortable效果 代码有错但值得看看
2009/11/05 Javascript
JavaScript 高级篇之闭包、模拟类,继承(五)
2012/04/07 Javascript
jQuery使用技巧简单汇总
2013/04/18 Javascript
Jquery实现遮罩层的方法
2015/06/08 Javascript
jQuery仿360导航页图标拖动排序效果代码分享
2015/08/24 Javascript
AngularJS中$watch和$timeout的使用示例
2016/09/20 Javascript
Angular表单验证实例详解
2016/10/20 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
vue 自定义指令自动获取文本框焦点的方法
2018/08/25 Javascript
vue使用nprogress实现进度条
2019/12/09 Javascript
详解react组件通讯方式(多种)
2020/05/06 Javascript
[01:10]DOTA2亚洲邀请赛 征战号角响彻全场
2015/01/06 DOTA
在Python中处理日期和时间的基本知识点整理汇总
2015/05/22 Python
python正则实现提取电话功能
2018/02/24 Python
python3.6+django2.0开发一套学员管理系统
2018/03/03 Python
在Pandas中DataFrame数据合并,连接(concat,merge,join)的实例
2019/01/29 Python
使用python求解二次规划的问题
2020/02/29 Python
Python面向对象程序设计之类和对象、实例变量、类变量用法分析
2020/03/23 Python
python程序输出无内容的解决方式
2020/04/09 Python
关于pycharm 切换 python3.9 报错 ‘HTMLParser‘ object has no attribute ‘unescape‘ 的问题
2020/11/24 Python
精选鞋类、服装和配饰的全球领先目的地:Bodega
2021/02/27 全球购物
Linux Interview Questions For software testers
2012/06/02 面试题
个人收入证明范本
2014/09/18 职场文书
副总经理岗位职责范本
2014/09/30 职场文书
信访工作个人总结
2015/03/03 职场文书
2015年网管个人工作总结
2015/05/22 职场文书
学习十八大的感悟
2015/08/11 职场文书
Vue+Element UI实现概要小弹窗的全过程
2021/05/30 Vue.js