在JS里加事件 

<input type="button" value="测试" onclick="test()"/>跟一个函数名

<body>
<input type="button" value="测试" onclick="test()"/> </body>
<script type="text/javascript">
function test()
{
alert("aa");
} </script>

用Jquery做点击事件

<script src="jquery-1.11.2.min.js"></script>
</head> <body>
<input type="button" value="测试" onclick="test()" />
<input type="button" value="测试2" id="btn" />
</body>
<script type="text/javascript">
/*function test()
{
alert("aa");
}*/ $(document).ready(function(e){
//先找元素 加了个点击事件Jquery里面就是click
//没有函数名的方法叫匿名函数
$("#btn").click(function(){
alert("第二个按钮"); }) }); </script>

JS里面是onclick

但在Jquery里就是click

funcion()没有函数名的方法叫做匿名函数

以上就是Jquery里加事件的一种方式

不是在元素里面加了,而是根据选择器找到这个元素然后点click方法来加一个事件

这是加事件的方式

如果想给页面里面多个元素加事件然后知道点击了谁

<script src="jquery-1.11.2.min.js"></script>
</head> <body>
<input type="button" value="测试" onclick="test()" />
<input type="button" value="测试2" id="btn" /> <input type="button" value="测试3" class="btn" />
<input type="button" value="测试4" class="btn" />
<input type="button" value="测试5" class="btn" />
</body>
<script type="text/javascript"> $(document).ready(function(e){
//根据class找,找到3个按钮,加一个点击事件
$(".btn").click(function(){ //要知道点击了谁,选取当前点击的这个元素
//原先的this关键字写在onclick里面是传递本身
//这的this写在时间里面 代表了谁过来触发了点击事件,this就代表谁
alert($(this).val());
}) }); </script>
原先的this关键字写在onclick里面是传递本身
这的this写在时间里面 代表了谁过来触发了点击事件,this就代表谁

Jquery里面当然还支持挂事件  动态的挂事件或是移除事件

用挂事件按钮和移除事件的按钮来动态的控制事件

<input type="button" value="挂事件" id="gua" />
<input type="button" value="测试事件" id="ceshi" />
<input type="button" value="移除事件" id="yichu" />
</body>
<script type="text/javascript"> $(document).ready(function(e){ //动态的挂事件 点击给测试事件按钮挂一个事件
$("#gua").click(function(){
//bind方法用于挂事件,是为了以后能移除,用click以后移除不了
$("#ceshi").bind("click",function(){ alert("挂上了事件"); }); //bind 是绑定的一个方法,这个方法里面需要两个参数:1.事件名称 2.事件要执行什么代码,用个匿名函数 })
//点击给测试事件按钮移除点击事件
$("#yichu").click(function(){
$("#ceshi").unbind("click");//unbind叫做解绑 }) }); </script>

bind 用于挂事件是一种绑定的方法

unbind是解绑

练习:

1.全选练习

<body>
<br />
<div><input type="checkbox" id="qx" />全选</div>
<br />
<input type="checkbox" class="ck" />济南
<input type="checkbox" class="ck" />淄博
<input type="checkbox" class="ck" />青岛
<input type="checkbox" class="ck" />泰安
<input type="checkbox" class="ck" />烟台
</body>

先做一个全选按钮,再一个列表框

如果JS是扔在页面最下方可以不用写

$(doucment).ready(function(e){});

接下来用Jquery来写一下全选

<script src="jquery-1.11.2.min.js"></script>
</head> <body>
<br />
<div><input type="checkbox" id="qx" />全选</div>
<br />
<input type="checkbox" class="ck" />济南
<input type="checkbox" class="ck" />淄博
<input type="checkbox" class="ck" />青岛
<input type="checkbox" class="ck" />泰安
<input type="checkbox" class="ck" />烟台
</body>
<script type="text/javascript">
//js做法,比较繁琐也会有bug
function xuan()
{
var a = document.getElementById("qx");
var ck = document.getElementsByClassName("ck"); for(var i=;i<ck.length;i++)
{
if(a.checked)
{
ck[i].setAttribute("checked","checked");
}
else
{
ck[i].removeAttribute("checked");
}
}
} //用Jquery做
$("#qx").click(function(){ var xz = $(this).prop("checked");
alert(xz);
}) </script>

这里用prop 不用attr  凡是涉及到checkbox  radio button涉及到复选框,单选按钮的时候,不用attr是有Bug的

//用Jquery做
$("#qx").click(function(){ var xz = $(this).prop("checked");//布尔型数据
$(".ck").prop("checked",xz); //改个属性
})

这样就实现全选


2.页面很多DIV方块,点击哪个换哪个颜色

<script src="jquery-1.11.2.min.js"></script>
<style type="text/css">
.aa{ width:200px; height:200px; float:left; margin:5px; background-color:#F03}
</style>
</head> <body>
<br />
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
<div class="aa">
</div>
</body>

 鼠标点击哪个方块哪个变色,但是只有一个是选中的,不光是点击后换色,也要让其他的还原

</body>
<script type="text/javascript">
$(".aa").click(function(){
//所有元素背景色变成回原来的
$(".aa").css("background-color","#F03");
//通过this找到点击了谁
$(this).css("background-color","#FC0"); }) </script>

如果在继续加效果,鼠标移上的效果,鼠标的效果把点击的效果覆盖,该如继续?

</body>
<script type="text/javascript">
$(".aa").click(function(){
//所有元素背景色变成回原来的
$(".aa").removeAttr("xz");
$(".aa").css("background-color","#F03");
//通过this找到点击了谁
$(this).attr("xz","");//在这项选中之前要把其他的清掉
$(this).css("background-color","#FC0"); })
$(".aa").mousemove(function(){
//所有元素背景色变成回原来的
$(".aa").css("background-color","#F03");
//鼠标放上
$(this).css("background-color","#0FF");
//属性筛选,找到属性下的该元素改下背景色
$("[xz='1']").css("background-color","#FC0"); }) </script>

这样就实现了在页面很多DIV方块,点击哪个换哪个颜色

Jquery事件的更多相关文章

  1. JQuery选择器JQuery 事件

    JQuery 元素选择器 jQuery 使用 CSS 选择器来选取 HTML 元素. $("p") 选取 <p> 元素. $("p.intro") ...

  2. HTML Select 标签选择后触发jQuery事件代码实例

    页面设计原由: 因为很多客户不知道如何来到我们公司,领导想让我在微信公众号上面做一个链接,客户可以直接通过微信公众号打开地图并导航到我们公司的办公地点. 实现起来并不难,但由于公司有很多办事处,所以需 ...

  3. jquery事件核心源码分析

    我们从绑定事件开始,一步步往下看: 以jquery.1.8.3为例,平时通过jquery绑定事件最常用的是on方法,大概分为下面3种类型: $(target).on('click',function( ...

  4. 解密jQuery事件核心 - 委托设计(二)

    第一篇 http://www.cnblogs.com/aaronjs/p/3444874.html 从上章就能得出几个信息: 事件信息都存储在数据缓存中 对于没有特殊事件特有监听方法和普通事件都用ad ...

  5. 解密jQuery事件核心 - 模拟事件(四)

    前几章已经把最核心的实现都分解过了,这一章我们看看jQuery是如何实现事件模拟的 在Internet Explorer 8和更低,一些事件change 和 submit本身不冒泡,但jQuery修改 ...

  6. 深入学习jQuery事件对象

    × 目录 [1]获取 [2]事件类型 [3]事件目标[4]当前元素[5]事件冒泡[6]默认行为[7]命名空间[8]返回值[9]键值 前面的话 在触发DOM上的某个事件时,会产生一个事件对象event, ...

  7. 深入学习jQuery事件绑定

    × 目录 [1]bind [2]trigger [3]delegate[4]on[5]one 前面的话 javascript有HTML.DOM0级.DOM2级和IE这四种事件处理程序,而jQuery对 ...

  8. jquery 事件冒泡的介绍以及如何阻止事件冒泡

    在一个对象上触发某类事件(比如单击onclick事件),如果此对象定义了此事件的处理程序,那么此事件就会调用这个处理程序,如果没有定义此事件处理程序或者事件返回true,那么这个事件会向这个对象的父级 ...

  9. jQuery源代码学习之九—jQuery事件模块

    jQuery事件系统并没有将事件坚挺函数直接绑定在DOM元素上,而是基于事件缓存模块来管理监听函数的. 二.jQuery事件模块的代码结构 //定义了一些正则 // // //jQuery事件对象 j ...

  10. jQuery事件总结

    blur() 触发或绑定blur事件.$("input").blur(function(){ $("input").css("background-c ...

随机推荐

  1. 架构设计:远程调用服务架构设计及zookeeper技术详解(下篇)

    一.下篇开头的废话 终于开写下篇了,这也是我写远程调用框架的第三篇文章,前两篇都被博客园作为[编辑推荐]的文章,很兴奋哦,嘿嘿~~~~,本人是个很臭美的人,一定得要截图为证: 今天是2014年的第一天 ...

  2. xamarin DependencyService源码阅读

    xamarin在面对PCL无法实现的各平台特有功能时使用了一种叫[DependencyService]的方式来实现.它使得xamarin能像原生平台一样做平台能做到的事情!主要分四个部分 接口:定义功 ...

  3. .NET Core的日志[1]:采用统一的模式记录日志

    记录各种级别的日志是所有应用不可或缺的功能.关于日志记录的实现,我们有太多第三方框架可供选择,比如Log4Net.NLog.Loggr和Serilog 等,当然我们还可以选择微软原生的诊断框架(相关A ...

  4. SQL Server-聚焦查询计划Stream Aggregate VS Hash Match Aggregate(二十)

    前言 之前系列中在查询计划中一直出现Stream Aggregate,当时也只是做了基本了解,对于查询计划中出现的操作,我们都需要去详细研究下,只有这样才能对查询计划执行的每一步操作都了如指掌,所以才 ...

  5. Windows下Visual studio 2013 编译 Audacity

    编译的Audacity版本为2.1.2,由于实在windows下编译,其源代码可以从Github上取得 git clone https://github.com/audacity/audacity. ...

  6. VSCode调试go语言出现:exec: "gcc": executable file not found in %PATH%

    1.问题描述 由于安装VS15 Preview 5,搞的系统由重新安装一次:在用vscdoe编译go语言时,出现以下问题: # odbcexec: "gcc": executabl ...

  7. javascript动画系列第四篇——拖拽改变元素大小

    × 目录 [1]原理简介 [2]范围圈定 [3]大小改变[4]代码优化 前面的话 拖拽可以让元素移动,也可以改变元素大小.本文将详细介绍拖拽改变元素大小的效果实现 原理简介 拖拽让元素移动,是改变定位 ...

  8. C# salt+hash 加密

    一.先明确几个基本概念 1.伪随机数:pseudo-random number generators ,简称为:PRNGs,是计算机利用一定的算法来产生的.伪随机数并不是假随机 数,这里的" ...

  9. MyBatis源码分析(二)语句处理器

    StatementHandler 语句处理器,主要负责语句的创建.参数的设置.语句的执行.不负责结果集的处理. Statement prepare(Connection connection, Int ...

  10. BPM协同平台解决方案分享

    一.需求分析 企业信息化的过程都是从单纯解决一个业务功能问题,到解决企业内部业务流程问题,再扩展到解决不同业务流程的关联互动问题, 核心是业务的集成和业务的协同,需要有一个统一的业务协同平台. 国内的 ...