jQuery 事件

发布时间:2022-06-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了jQuery 事件脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

ready(fn):当DOM载入就绪可以查询及操纵时绑定一个要执行的函数。

这是事件模块中最重要的一个函数,因为它可以极大地提高web应用程序的响应速度。

简单地说,这个方法纯粹是对向window.load事件注册事件的替代方法。通过使用这个方法,可以在DOM载入就绪能够读取并操纵时立即调用你所绑定的函数,而99.99%的JavaScript函数都需要在那一刻执行。

有一个参数--对jQuery函数的引用--会传递到这个ready事件处理函数中。可以给这个参数任意起一个名字,并因此可以不再担心命名冲突而放心地使用$别名。

请确保在 <body> 元素的onload事件中没有注册函数,否则不会触发+$(document).ready()事件。

可以在同一个页面中无限次地使用$(document).ready()事件。其中注册的函数会按照(代码中的)先后顺序依次执行。

 在DOM加载完成时运行的代码,可以这样写:

jQuery 代码:
$(document).ready(function(){
  // 在这里写你的代码...
});

描述:

使用 $(document).ready() 的简写,同时内部的 jQuery 代码依然使用 $ 作为别名,而不管全局的 $ 为何。

jQuery 代码:
$(function($) {
  // 你可以在这里继续使用$作为别名...
});

 

on(events,[selector],[data],fn):在选择元素上绑定一个或多个事件的事件处理函数。

on()方法绑定事件处理程序到当前选定的jQuery对象中的元素。在jQuery 1.7中,.on()方法 提供绑定事件处理程序所需的所有功能。帮助从旧的jQuery事件方法转换,see .bind(), .delegate(), 和 .live(). 要删除的.on()绑定的事件,请参阅.off()。要附加一个事件,只运行一次,然后删除自己, 请参阅.one()

参数

events,[selector],[data],fn 

  • events:一个或多个用空格分隔的事件类型和可选的命名空间,如"click"或"keydown.myPlugin" 。
  • selector:一个选择器字符串用于过滤器的触发事件的选择器元素的后代。如果选择的< null或省略,当它到达选定的元素,事件总是触发。
  • data:当一个事件被触发时要传递event.data给事件处理函数。
  • fn:该事件被触发时执行的函数。 false 值也可以做一个函数的简写,返回false。

events-map,[selector],[data] 

  • events-map:个用字符串表示的,一个或多个空格分隔的事件类型和可选的命名空间,值表示事件绑定的处理函数。
  • selector:一个选择器字符串过滤选定的元素,该选择器的后裔元素将调用处理程序。如果选择是空或被忽略,当它到达选定的元素,事件总是触发。
  • data:当一个事件被触发时要传递event.data给事件处理函数。

描述:

Display a paragraph's text in an alert when it is clicked:

$("p").on("click", function(){
alert( $(this).text() );
});

Pass data to the event handler, which is specified here by name:

function myHandler(event) {
alert(event.data.foo);
}
$("p").on("click", {foo: "bar"}, myHandler)

Cancel a form submit action and prevent the event from bubbling up by returning false:

$("form").on("submit", false)

Cancel only the default action by using .preventDefault().

$("form").on("submit", function(event) {
  event.preventDefault();
});

Stop submit events from bubbling without preventing form submit, using .stopPropagation().

$("form").on("submit", function(event) {
  event.stopPropagation();
});

 

off(events,[selector],[fn]):在选择元素上移除一个或多个事件的事件处理函数。

off() 方法移除用.on()绑定的事件处理程序。有关详细信息,请参阅该网页上delegated和directly绑定事件。特定的事件处理程序可以被移除元素上提供事件的名称,命名空间,选择器,或处理函数名称的组合。当有多个过滤参数,所提供的参数都必须匹配的事件处理程序被删除。

如果一个简单的事件名称,比如提供"click",所有 这种类型的事件(包括直接和委派)从jQuery设置的元素上删除。当编写代码,将作为一个插件使用,或者干脆当一个大的代码基础工作,最好的做法是安装和取下使用命名空间的事件,从而使代码不会无意中删除其他代码附加事件处理程序。在一个特定的命名空间中的所有类型的所有事件,可以从一个元素中删除,只是提供了一个命名空间,比如 ".myPlugin"。至少,无论是命名空间或事件名称必须提供。

要删除特定的委派事件处理程序,提供一个selector 的参数。选择器字符串必须是完全匹配递到.on()事件处理程序附加的选择器。要删除非委托元素上的所有事件,使用特殊值 "**" 。

处理程序也可以删除handler参数指定名称的函数。当jQuery的绑定一个事件处理程序,它分配一个唯一的ID给处理函数。函数用jQuery.proxy()代理或类似有相同的唯一ID机制(代理函数),因此,通过代理处理程序.off 可能会删除比预期更多的处理程序。在这些情况下,最好是附加和移除事件处理程序,使用命名空间。

和.on()一样,你可以传递一个 events-map>参数明确的指定而不是用events 和 handler作为单独参数。键事件和/或命名空间;值是处理函数或为false的特殊价值。

 

events,[selector],[fn]

  • events:一个或多个空格分隔的事件类型和可选的命名空间,或仅仅是命名空间,比如"click", "keydown.myPlugin", 或者 ".myPlugin".
  • selector:一个最初传递到.on()事件处理程序附加的选择器。
  • fn:事件处理程序函数以前附加事件上,或特殊值false.

events-map,[selector]

  • events-map:一个用字符串表示的,一个或多个空格分隔的事件类型和可选的命名空间,值表示先前事件绑定的处理函数。
  • selector:一个最初传递到.on()事件处理程序附加的选择器。

示例:

Remove all event handlers from all paragraphs:

$("p").off()

Remove all delegated click handlers from all paragraphs:

$("p").off( "click", "**" )

Remove just one previously bound handler by passing it as the third argument:

var foo = function () {
  // code to handle some kind of event
};
// ... now foo will be called when paragraphs are clicked ...
$("body").on("click", "p", foo);
// ... foo will no longer be called.
$("body").off("click", "p", foo); 

Unbind all delegated event handlers by their namespace:

var validate = function () {
  // code to validate form entries
};
// delegate events under the ".validator" namespace
$("form").on("click.validator", "button", validate);
$("form").on("keypress.validator", "input[type='text']", validate);
// remove event handlers in the ".validator" namespace
$("form").off(".validator");

one(type,[data],fn):为每一个匹配元素的特定事件(像click)绑定一个一次性的事件处理函数。

在每个对象上,这个事件处理函数只会被执行一次。其他规则与bind()函数相同。这个事件处理函数会接收到一个事件对象,可以通过它来阻止(浏览器)默认的行为。如果既想取消默认的行为,又想阻止事件起泡,这个事件处理函数必须返回false。

多数情况下,可以把事件处理函数定义为匿名函数(见示例一)。在不可能定义匿名函数的情况下,可以传递一个可选的数据对象作为第二个参数(而事件处理函数则作为第三个参数),见示例二。

type,[data],fnString,Object,Function 

  • type:添加到元素的一个或多个事件。由空格分隔多个事件。必须是有效的事件。
  • data:将要传递给事件处理函数的数据映射
  • fn:每当事件触发时执行的函数。

示例:

当所有段落被第一次点击的时候,显示所有其文本。

jQuery 代码:
$("p").one("click", function(){
  alert( $(this).text() );
});

trigger(type,[data]):在每一个匹配的元素上触发某类事件。

这个函数也会导致浏览器同名的默认行为的执行。比如,如果用trigger()触发一个'submit',则同样会导致浏览器提交表单。如果要阻止这种默认行为,应返回false。

你也可以触发由bind()注册的自定义事件而不限于浏览器默认事件。

事件处理函数会收到一个修复的(规范化的)事件对象,但这个对象没有特定浏览器才有的属性,比如keyCode。

jQuery也支持 <a href="http://docs.jquery.com/Namespaced_Events">命名空间事件</a>。这允许你触发或者解除绑定一组特定的事件处理函数,而无需一一个指定。你可以在事件类型后面加上感叹号 ! 来只触发那些没有命名空间的事件处理函数。

jQuery 1.3中新增:

所有触发的事件现在会冒泡到DOM树上了。举例来说,如果你在一个段落p上触发一个事件,他首先会在这个元素上触发,其次到父元素,在到父元素的父元素,直到触发到document对象。这个事件对象有一个 .target 属性指向最开始触发这个事件的元素。你可以用 stopPropagation() 来阻止事件冒泡,或者在事件处理函数中返回false即可。

事件对象构造器现在已经公开,并且你可以自行创建一个事件对象。这个事件对象可以直接传递给trigger所触发的事件处理函数。事件对象的完整属性列表可以在 <a href="http://docs.jquery.com/Events/jQuery.Event">jQuery.Event</a> 的文档里找到。

你可以有三种方式指定事件类型:

* 你可以传递字符串型的事件名称(type参数)。

* 你可以使用jQuery.Event对象。可以将数据放进这个对象,并且这个对象可以被触发的事件处理函数获取到。

* 最后,你可以传递一个带有数据的字面量对象。他将被复制到真正的jQuery.Event对象上去。 注意在这种情况下你'''必须'''指定一个 <em>type</em> 属性。

type,[data]String|Event,Array 

  • type:一个事件对象或者要触发的事件类型
  • data:传递给事件处理函数的附加参数

示例:

提交第一个表单,但不用submit()

jQuery 代码:
$("form:first").trigger("submit")

描述:给一个事件传递参数

jQuery 代码:
$("p").click( function (event, a, b) {
  // 一个普通的点击事件时,a和b是undefined类型
  // 如果用下面的语句触发,那么a指向"foo",而b指向"bar"
} ).trigger("click", ["foo", "bar"]);

描述:下面的代码可以显示一个"Hello World"

jQuery 代码:
$("p").bind("myEvent", function (event, message1, message2) {
  alert(message1 + ' ' + message2);
});
$("p").trigger("myEvent", ["Hello","World!"]);

hover([over,]out):一个模仿悬停事件(鼠标移动到一个对象上面及移出这个对象)的方法。这是一个自定义的方法,它为频繁使用的任务提供了一种“保持在其中”的状态。

当鼠标移动到一个匹配的元素上面时,会触发指定的第一个函数。当鼠标移出这个元素时,会触发指定的第二个函数。而且,会伴随着对鼠标是否仍然处在特定元素中的检测(例如,处在div中的图像),如果是,则会继续保持“悬停”状态,而不触发移出事件(修正了使用mouseout事件的一个常见错误)。


over,outFunction,Function

  • over:鼠标移到元素上要触发的函数
  • out:鼠标移出元素要触发的函数
 

over,out 描述:鼠标悬停的表格加上特定的类

jQuery 事件

 

 

jQuery 代码:

$("td").hover(
  function () {
    $(this).addClass("hover");
  },
  function () {
    $(this).removeClass("hover");
  }
);

out 描述:hover()方法通过绑定变量"handlerInOut"来切换方法。

jQuery 代码:

$("td").bind("mouseenter mouseleave",handlerInOut);
$("td").hover(handlerInOut);

toggle([speed],[easing],[fn]):用于绑定两个或多个事件处理器函数,以响应被选元素的轮流的 click 事件。

如果元素是可见的,切换为隐藏的;如果元素是隐藏的,切换为可见的。

[speed] [,fn]String,FunctionV1.0


  • speed: 隐藏/显示 效果的速度。默认是 "0"毫秒。可能的值:slow,normal,fast。"
  • fn:在动画完成时执行的函数,每个元素执行一次。

[speed], [easing ], [fn ] String,String,FunctionV1.4.3


  • speed: 隐藏/显示 效果的速度。默认是 "0"毫秒。可能的值:slow,normal,fast。"
  • easing:(Optional) 用来指定切换效果,默认是"swing",可用参数"linear"
  • fn:在动画完成时执行的函数,每个元素执行一次。

switchBooleanV1.3


  • 用于确定显示/隐藏的开关。如:true - 显示元素,false - 隐藏元素

无参数描述:对表格切换显示/隐藏


jQuery 代码:

$('td).toggle();

speed 描述:用600毫秒的时间将段落缓慢的切换显示状态


jQuery 代码:

$("p").toggle("slow");

speed,fn 描述:用200毫秒将段落迅速切换显示状态,之后弹出一个对话框。


jQuery 代码:
$("p").toggle("fast",function(){
   alert("Animation Done.");
 });

switch参数描述:如果这个参数为true ,那么匹配的元素将显示;如果false ,元素是隐藏的


jQuery 代码:
$('#foo').toggle(showOrHide);
//相当于
if (showOrHide) {
  $('#foo').show();
} else {
  $('#foo').hide();
}      
 

blur([[data],fn]):当元素失去焦点时触发 blur 事件。

这个函数会调用执行绑定到blur事件的所有函数,包括浏览器的默认行为。可以通过返回false来防止触发浏览器的默认行为。blur事件会在元素失去焦点的时候触发,既可以是鼠标行为,也可以是按tab键离开的


fnFunctionV1.0


  • 在每一个匹配元素的blur事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3


  • data:blur([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的blur事件中绑定的处理函数。

描述:触发所有段落的blur事件

jQuery 代码:
$("p").blur();

描述:任何段落失去焦点时弹出一个 "Hello World!"在每一个匹配元素的blur事件中绑定的处理函数。

jQuery 代码:
$("p").blur( function () { alert("Hello World!"); } );

change([[data],fn]):当元素的值发生改变时,会发生 change 事件。

该事件仅适用于文本域(text field),以及 textarea 和 select 元素。当用于 select 元素时,change 事件会在选择某个选项时发生。当用于 text field 或 text area 时,该事件会在元素失去焦点时发生。

参数


fnFunctionV1.0


  • 在每一个匹配元素的change事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3


  • data:change([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的change事件中绑定的处理函数。

描述:触发被选元素的 change 事件。

jQuery 代码:
$(selector).change();

描述:给所有的文本框增加输入验证

jQuery 代码:
$("input[type='text']").change( function() {
  // 这里可以写些验证代码
});

click([[data],fn]):触发每一个匹配元素的click事件。

这个函数会调用执行绑定到click事件的所有函数。


fnFunctionV1.0

  • 在每一个匹配元素的click事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3


  • data:click([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的click事件中绑定的处理函数。

描述:触发页面内所有段落的点击事件

jQuery 代码:


$("p").click();

描述:将页面内所有段落点击后隐藏

jQuery 代码:

$("p").click( function () { $(this).hide(); });

dblclick([[data],fn]):当双击元素时,会发生 dblclick 事件。

当鼠标指针停留在元素上方,然后按下并松开鼠标左键时,就会发生一次 click。在很短的时间内发生两次 click,即是一次 double click 事件。提示:如果把 dblclick 和 click 事件应用于同一元素,可能会产生问题。


fnFunctionV1.0

  • 在每一个匹配元素的dblclick事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3

  • data:dblclick([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的dblclick事件中绑定的处理函数。

描述:给页面上每个段落的双击事件绑上 "Hello World!" 警告框

jQuery 代码:

$("p").dblclick( function () { alert("Hello World!"); });

focus([[data],fn]):当元素获得焦点时,触发 focus 事件。

可以通过鼠标点击或者键盘上的TAB导航触发。这将触发所有绑定的focus函数,注意,某些对象不支持focus方法。

fnFunction 

  • 在每一个匹配元素的focus事件中绑定的处理函数。

[data],fnString,Function 

  • data:focus([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的focus事件中绑定的处理函数。

示例

描述:当页面加载后将 id 为 'login' 的元素设置焦点:

jQuery 代码:
$(document).ready(function(){
  $("#login").focus();
});

描述:使人无法使用文本框:

jQuery 代码:
$("input[type=text]").focus(function(){
  this.blur();
});

focusin([data],fn):当元素获得焦点时,触发 focusin 事件。

focusin事件跟focus事件区别在于,他可以在父元素上检测子元素获取焦点的情况。


参数

fnFunction

  • 在每一个匹配元素的focusin事件中绑定的处理函数。

[data],fnString,Function

  • data:focusin([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的focusin事件中绑定的处理函数。

示例

描述:获得焦点后会触发动画:

HTML 代码:
<p><input type="text" /> <span>focusout fire</span></p>
<p><input type="password" /> <span>focusout fire</span></p>
jQuery 代码:
$("p").focusin(function() {
  $(this).find("span").css('display','inline').fadeOut(1000);
});

focusout([data],fn):当元素失去焦点时触发 focusout 事件。

focusout事件跟blur事件区别在于,他可以在父元素上检测子元素失去焦点的情况。


参数

fnFunction 

在每一个匹配元素的focusout事件中绑定的处理函数。

[data],fnString,Function 

  • data:focusout([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的focusout事件中绑定的处理函数。

示例:

描述:失去焦点后会触发动画:

HTML 代码:
<p><input type="text" /> <span>focusout fire</span></p>
<p><input type="password" /> <span>focusout fire</span></p>
jQuery 代码:
$("p").focusout(function() {
  $(this).find("span").css('display','inline').fadeOut(1000);
});
 

keydown([[data],fn]):当键盘或按钮被按下时,发生 keydown 事件。

注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。

参数

fnFunction

  • 在每一个匹配元素的keydown事件中绑定的处理函数。

[data],fnString,Function

  • data:keydown([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的keydown事件中绑定的处理函数。

示例

描述:在页面内对键盘按键做出回应,可以使用如下代码:

jQuery 代码:
$(window).keydown(function(event){
  switch(event.keyCode) {
    // ...
    // 不同的按键可以做不同的事情
    // 不同的浏览器的keycode不同
    // 更多详细信息:     http://unixpapa.com/js/key.html
    // 常用keyCode: 空格 32   Enter 13   ESC 27
  }
});

keypress([[data],fn]):当键盘或按钮被按下时,发生 keypress 事件。

keypress 事件与 keydown 事件类似。当按钮被按下时,会发生该事件。它发生在当前获得焦点的元素上。 不过,与 keydown 事件不同,每插入一个字符,就会发生 keypress 事件。注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。

fnFunction

  • 在每一个匹配元素的keypress事件中绑定的处理函数。

[data],fnString,Function

  • data:keypress([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的keypress事件中绑定的处理函数。

keyup([[data],fn]):当按钮被松开时,发生 keyup 事件。它发生在当前获得焦点的元素上。

注释:如果在文档元素上进行设置,则无论元素是否获得焦点,该事件都会发生。

fnFunction

  • 在每一个匹配元素的keyup事件中绑定的处理函数。

[data],fnString,Function

  • data:keyup([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的keyup事件中绑定的处理函数。

示例

描述:当按下按键时,改变文本域的颜色:

jQuery 代码:
$("input").keyup(function(){
  $("input").css("background-color","#D6D6FF");
});

mousedown([[data],fn]):当鼠标指针移动到元素上方,并按下鼠标按键时,会发生 mousedown 事件。

mousedown 与 click 事件不同,mousedown 事件仅需要按键被按下,而不需要松开即可发生。

参数

fnFunctionV1.0

  • 在每一个匹配元素的mousedown事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3

  • data:mousedown([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的mousedown事件中绑定的处理函数。

示例

描述:当按下鼠标按钮时,隐藏或显示元素:

jQuery 代码:
$("button").mousedown(function(){
  $("p").slideToggle();
});

mouseenter([[data],fn]):当鼠标指针穿过元素时,会发生 mouseenter 事件。该事件大多数时候会与mouseleave 事件一起使用。

与 mouseover 事件不同,只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。如果鼠标指针穿过任何子元素,同样会触发 mouseover 事件。

fnFunction 

  • 在每一个匹配元素的mouseenter事件中绑定的处理函数。

[data],fnString,Function 

  • data:mouseenter([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的mouseenter事件中绑定的处理函数。

示例

描述:当鼠标指针进入(穿过)元素时,改变元素的背景色:

jQuery 代码:
$("p").mouseenter(function(){
  $("p").css("background-color","yellow");
});

mouseleave([[data],fn]):当鼠标指针离开元素时,会发生 mouseleave 事件。该事件大多数时候会与mouseenter 事件一起使用。

与 mouseout 事件不同,只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。如果鼠标指针离开任何子元素,同样会触发 mouseout 事件。

参数

fnFunction 

在每一个匹配元素的mouseleave事件中绑定的处理函数。

[data],fnString,Function

data:mouseleave([Data], fn) 可传入data供函数fn处理。

fn:在每一个匹配元素的mouseleave事件中绑定的处理函数。

示例

描述:当鼠标指针离开元素时,改变元素的背景色:

jQuery 代码:
$("p").mouseleave(function(){
  $("p").css("background-color","#E9E9E4");
});

mousemove([[data],fn]):当鼠标指针在指定的元素中移动时,就会发生 mousemove 事件。

mousemove事件处理函数会被传递一个变量——事件对象,其.clientX 和 .clientY 属性代表鼠标的坐标

参数

fnFunctionV1.0

在每一个匹配元素的mousemove事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3

data:mousemove([Data], fn) 可传入data供函数fn处理。

fn:在每一个匹配元素的mousemove事件中绑定的处理函数。

示例

描述:

获得鼠标指针在页面中的位置:

jQuery 代码:
$(document).mousemove(function(e){
  $("span").text(e.pageX + ", " + e.pageY);
});
$(".child").mousemove(function(e){
               console.log(e.offsetX,e.offsetY);
           })

mouseout([[data],fn]):当鼠标指针从元素上移开时,发生 mouseout 事件。

该事件大多数时候会与 mouseover 事件一起使用。

注释:与 mouseleave 事件不同,不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。请看下面例子的演示。

参数

fnFunctionV1.0

  • 在每一个匹配元素的mouseout事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3

  • data:mouseout([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的mouseout事件中绑定的处理函数。

示例

描述:当鼠标从元素上移开时,改变元素的背景色:

jQuery 代码:
$("p").mouseout(function(){
  $("p").css("background-color","#E9E9E4");
});
 

mouseover([[data],fn]):当鼠标指针位于元素上方时,会发生 mouseover 事件。

该事件大多数时候会与 mouseout 事件一起使用。

注释:与 mouseenter 事件不同,不论鼠标指针穿过被选元素或其子元素,都会触发 mouseover 事件。只有在鼠标指针穿过被选元素时,才会触发 mouseenter 事件。请看下面例子的演示。

参数

fnFunction 

  • 在每一个匹配元素的mouseover事件中绑定的处理函数。

[data],fnString,Function 

  • data:mouseover([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的mouseover事件中绑定的处理函数。

示例

描述:当鼠标指针位于元素上方时时,改变元素的背景色:

jQuery 代码:
$("p").mouseover(function(){
  $("p").css("background-color","yellow");
});
 

jQuery 事件

 

 

mouseup([[data],fn]):当在元素上放松鼠标按钮时,会发生 mouseup 事件。

与 click 事件不同,mouseup 事件仅需要放松按钮。当鼠标指针位于元素上方时,放松鼠标按钮就会触发该事件。

参数

fnFunction

在每一个匹配元素的mouseup事件中绑定的处理函数。

[data],fnString,Function

data:mouseup([Data], fn) 可传入data供函数fn处理。

fn:在每一个匹配元素的mouseup事件中绑定的处理函数。

示例

描述:当松开鼠标按钮时,隐藏或显示元素:

jQuery 代码:
$("button").mouseup(function(){
  $("p").slideToggle();
});

resize([[data],fn]):当调整浏览器窗口的大小时,发生 resize 事件。

参数

fnFunction

在每一个匹配元素的resize事件中绑定的处理函数。

[data],fnString,Function

data:resize([Data], fn) 可传入data供函数fn处理。

fn:在每一个匹配元素的resize事件中绑定的处理函数。

示例

描述:让人每次改变页面窗口的大小时很郁闷的方法:

jQuery 代码:
$(window).resize(function(){
  alert("Stop it!");
});

描述:对浏览器窗口调整大小进行计数:

jQuery 代码:
$(window).resize(function() {
  $('span').text(x+=1);
});

scroll([[data],fn]):当用户滚动指定的元素时,会发生 scroll 事件。

scroll 事件适用于所有可滚动的元素和 window 对象(浏览器窗口)。

参数

fnFunction

  • 在每一个匹配元素的scroll事件中绑定的处理函数。

[data],fnString,Function

  • data:scroll([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的scroll事件中绑定的处理函数。

示例

描述:当页面滚动条变化时,执行的函数:

jQuery 代码:
$(window).scroll( function() { /* ...do something... */ } );

描述:对元素滚动的次数进行计数:

jQuery 代码:
$("div").scroll(function() {
  $("span").text(x+=1);
});

select([[data],fn]):当 textarea 或文本类型的 input 元素中的文本被选择时,会发生 select 事件。

这个函数会调用执行绑定到select事件的所有函数,包括浏览器的默认行为。可以通过在某个绑定的函数中返回false来防止触发浏览器的默认行为。

参数

fnFunction

在每一个匹配元素的select事件中绑定的处理函数。

[data],fnString,Function

data:select([Data], fn) 可传入data供函数fn处理。

fn:在每一个匹配元素的select事件中绑定的处理函数。

示例

描述:触发所有input元素的select事件:

jQuery 代码:
$("input").select();

描述:当文本框中文本被选中时执行的函数:

jQuery 代码:
$(":text").select( function () { /* ...do something... */ } );

submit([[data],fn]):当提交表单时,会发生 submit 事件。

该事件只适用于表单元素。

参数

fnFunctionV1.0

  • 在每一个匹配元素的submit事件中绑定的处理函数。

[data],fnString,FunctionV1.4.3

  • data:submit([Data], fn) 可传入data供函数fn处理。
  • fn:在每一个匹配元素的submit事件中绑定的处理函数。

示例

描述:提交本页的第一个表单:

jQuery 代码:
$("form:first").submit();

描述:如果你要阻止表单提交:

jQuery 代码:
$("form").submit( function () {
  return false;
} );

jQuery 事件

 

 

 

 

JS中阻止冒泡事件的三种方法

冒泡事件:比如说鼠标点击了一个按钮,同样的事件将会在那个元素的所有祖先元素中被触发。这一过程被称为事件冒泡。

//冒泡事件

            function   stopPropagation(e){
                e.stopPropagation();//阻止事件冒泡
                e.preventDefault(); //阻止默认行为 reset  submit a [href]
                return false;
            }

           $(".child").click(function(e){
               console.log
               (".child");
               return stopPropagation(e);// 调用返回函数
           })

           $(".parent").click(function(){
               console.log(".parent");
           })

jQuery 事件

 

 

 

阻止冒泡事件有三种方法:

1.event.stopPropagation()方法

jQuery 事件

 

 

 这是阻止事件的冒泡方法,不让事件向documen上蔓延,但是默认事件任然会执行,当你掉用这个方法的时候,如果点击一个连接,这个连接仍然会被打开。例如:

jQuery 事件

2.event.preventDefault()方法

jQuery 事件

 

这是阻止默认事件的方法,调用此方法是,连接不会被打开,但是会发生冒泡,冒泡会传递到上一层的父元素;

3.return false ;

jQuery 事件

这个方法比较暴力,他会同事阻止事件冒泡也会阻止默认事件;写上此代码,连接不会被打开,事件也不会传递到上一层的父元素;可以理解为return false就等于同时调用了event.stopPropagation()和event.preventDefault()

脚本宝典总结

以上是脚本宝典为你收集整理的jQuery 事件全部内容,希望文章能够帮你解决jQuery 事件所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: