看这个例子: $(document).ready(function(){ $('.some-class').bind({ hover: function(e) { // Hover event handler alert("hover"); }, click: function(e) { // Click event handler alert("click"); }, blur: function(e) { // Blur event handler } }); }); 奇怪的事情发生了,这里的 “hover” 事件完全没有反应。 而...
看这个例子:
$(document).ready(function(){
$('.some-class').bind({
hover: function(e) {
// Hover event handler
alert("hover");
},
click: function(e) {
// Click event handler
alert("click");
},
blur: function(e) {
// Blur event handler
}
});
});
奇怪的事情发生了,这里的 “hover” 事件完全没有反应。 而像 “click” 和 “blur” 这两个都能正常调用。
同时,如下的代码也是正常运行的:
$(".some-class").hover(function(){
// stuff
})
为什么 bind 不能绑定 hover 呢?
答案是:
应该使用 mouseenter 和 mouseleave 这两个事件来代替 (这也是 .hover() 函数中使用的事件) 所以完全可以直接像这样来引用:
$(document).ready(function(){
$('.some-class').bind({
mouseenter: function(e) {
// Hover event handler
alert("hover");
},
mouseleave: function(e) {
// Hover event handler
alert("hover");
},
click: function(e) {
// Click event handler
alert("click");
},
blur: function(e) {
// Blur event handler
}
});
});
因为 .hover() 是 jQuery 自己定义的事件… 是为了方便用户绑定调用 mouseenter 和 mouseleave 事件而已,它并非一个真正的事件,所以当然不能当做 .bind() 中的事件参数来调用。
http://www.jdfwkey.com/
分享到:
相关推荐
事件处理是jQuery的另一大亮点,`.click()`、`.hover()`等方法使得绑定和解绑事件变得轻而易举。动画效果是jQuery吸引人的地方,`.fadeIn()`, `.slideUp()`, `.animate()`等方法让动态效果变得简单易行。最后,...
通常情况下,我们可以通过`bind`方法来绑定事件处理函数,但直接使用`bind`方法绑定`hover`事件并不能达到预期的效果。这是因为`hover`事件并不是一个原生的事件类型。jQuery通过`.hover()`方法提供了一种简便的方式...
- **事件API**:`.on()`, `.off()`, `.trigger()`, `.bind()`, `.unbind()`, `.hover()`等用于事件绑定和触发。 - **DOM操作API**:`.append()`, `.prepend()`, `.after()`, `.before()`, `.remove()`, `.empty()`...
总结来说,当需要在一些特殊环境或特定情况下处理事件时,使用`on`方法绑定hover事件不仅可以提高代码的灵活性,还能让事件处理更加清晰和可控。通过阅读本文,你应能够理解和掌握如何使用jQuery中的`on`方法来模拟...
2. **事件处理**:jQuery提供了丰富的事件处理函数,如`.click()`, `.hover()`, `.submit()`等,使得绑定和解绑事件变得异常简单。1.8.2对事件处理机制进行了调整,增强了事件的兼容性和处理效率。 3. **Ajax交互**...
- **事件处理**:`$(selector).click()`, `$(selector).hover()`等方法使得事件绑定和处理变得直观易懂。 - **动画**:`fadeIn()`, `slideUp()`, `slideDown()`等动画方法使得页面效果更具吸引力。 - **Ajax**:`$...
4. **事件处理(Events)**:通过`.bind()`, `.click()`, `.hover()`等方法,可以方便地绑定和触发事件。 5. **效果(Effects)**:jQuery提供了各种动画效果,如淡入淡出、滑动、改变大小等,如`.fadeIn()`, `....
- **`.bind()`, `.blur()`, `.change()`, `.click()`, `.dblclick()`, `.error()`, `.focus()`, `.hover()`, `.keydown()`, `.keypress()`**:允许为DOM元素绑定多种类型的事件监听器,增强了网页的交互性和响应性。...
`bind()`是jQuery中用于绑定事件处理函数到指定元素的方法。它允许我们为一个或多个事件类型添加事件处理器。基本语法如下: ```javascript $(selector).bind(eventType, function(event) { // 事件处理函数 }); `...
- **事件处理(Events)**:绑定和触发事件,如`click()`、`hover()`、`bind()`等。 - **动画(Animations)**:创建平滑的CSS属性变化,如`slideUp()`、`fadeIn()`、`animate()`等。 - **AJAX(Ajax)**:简化异步...
用hover()也就没效果了(因为要重新给th绑定mouseover和mouseout事件,而且考虑到可能会有多次加载th等情况,bind也要多次绑定,比较麻烦),在这里我使用了live来解决给新生的th绑定hover事件: 代码如下: $...
- `bind()`用于绑定事件处理函数,接受事件类型、数据和回调函数作为参数。例如,`$("#div1").bind("click", function() { alert("click div!"); })`会在`div1`被点击时弹出提示。 - `unbind()`则用于解除事件绑定...
`.click()`用于绑定点击事件,`.hover()`用于同时绑定鼠标进入和离开事件,`.bind()`和`.unbind()`则可以绑定和解绑任何类型的事件。此外,`.on()`和`.off()`是jQuery 1.7引入的事件处理新方法,它们更为灵活,支持...
1. 绑定事件:`.bind()`, `.click()`, `.hover()`等方法用于绑定事件处理函数,而`.unbind()`用于解除绑定。 2. 事件代理:使用`.delegate()`或`.on()`(jQuery1.7及以上版本)可以实现事件代理,提高性能并处理...
例如,`.on()`方法的引入,它是对`.bind()`, `.live()`, `.delegate()`等多个事件绑定函数的统一,使得事件处理更加灵活和高效。`.on()`方法可以实现元素的动态绑定,即使在元素动态添加到DOM后,依然能够捕获其触发...
jQuery是一个快速、小巧的JavaScript库,它使得HTML文档遍历和操作、事件处理、动画和Ajax变得非常简单。在处理事件时,jQuery提供了多种方法来绑定和解绑事件处理器。其中,.unbind()方法是用来移除之前使用.bind()...
1.4.1版本中,`bind()`, `unbind()`, `live()`, `die()`等方法帮助开发者绑定和解绑事件,而`.click()`, `.hover()`, `.change()`等简化的事件处理函数使得事件绑定更为方便。 4. **动画效果**: jQuery的动画效果...
3. **事件处理**:jQuery简化了事件绑定,如`click(function(){...})`用于响应点击事件,`hover(function(){...}, function(){...})`用于处理鼠标悬停的进入和离开事件。 4. **动画效果**:jQuery的`animate()`函数...
4. **事件处理**:jQuery的事件处理方式简洁高效,`.on()`方法可以绑定多种类型的事件,如点击事件`"click"`、鼠标悬停事件`"hover"`等。`.trigger()`可以触发已绑定的事件。此外,还可以使用`.bind()`、`.unbind()`...