jQuery中live函数的问题

$("#edit"+inId+inFd).focus().live("blur",function(){alert(222);});为什么浏览器老提示TypeError:... $("#edit"+inId+inFd).focus().live("blur",function(){
alert(222);
});
为什么浏览器老提示
TypeError: $(...).focus(...).live is not a function?
谢谢大神了
jQuery的版本是jquery-2.0.0.js
展开
 我来答
loveandkissyou
推荐于2018-03-11 · TA获得超过2297个赞
知道大有可为答主
回答量:2332
采纳率:0%
帮助的人:2543万
展开全部
jq 1.9 以上版本,废除了 live,用$.on()代替
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
gmaishgdx
2013-07-13 · 超过22用户采纳过TA的回答
知道答主
回答量:100
采纳率:0%
帮助的人:64.1万
展开全部
试试这个:
$("#edit"+inId+inFd).live('focus blur', function(event) {
if (event.type == 'focus') {
// do something on focus
} else {
// do something on blur
}
});
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
东哥zld
推荐于2016-06-28 · 机械自动化爱好者
东哥zld
机械自动化爱好者
采纳数:204 获赞数:17741
毕业不久,正在努力创造自己的骄傲

向TA提问 私信TA
展开全部
jQuery中live函数:
  给指定id或class的元素绑定(bind)事件时,对于改变或新加的元素,事件不会起作用,这时我们就要用live函数,它可以让子元素继承父元素的事件。
  事件委托
  live() 方法能对一个还没有添加进DOM的元素有效,是由于使用了事件委托:绑定在祖先元素上的事件处理函数可以对在后代上触发的事件作出回应。传递给 .live() 的事件处理函数不会绑定在元素上,而是把他作为一个特殊的事件处理函数,绑定在 DOM 树的根节点上。在我们的例子中,当点击新的元素后,会依次发生下列步骤:
  生成一个click事件传递给 <div> 来处理
  由于没有事件处理函数直接绑定在 <div> 上,所以事件冒泡到DOM树上
  事件不断冒泡一直到DOM树的根节点,默认情况下上面绑定了这个特殊的事件处理函数。
  执行由 .live() 绑定的特殊的 click 事件处理函数。
  这个事件处理函数首先检测事件对象的 target 来确定是不是需要继续。这个测试是通过检测 $(event.target).closest('.clickme') 能否找到匹配的元素来实现的。
  如果找到了匹配的元素,那么调用原始的事件处理函数。
  由于只有在事件发生时才会在上面的第五步里做测试,因此在任何时候添加的元素都能够响应这个事件。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式