jquery - Prototype .observe 说 attachEvent 不是函数
问题描述
有人可以告诉我,为什么我得到attachEvent
的不是这个 - jsFiddle的函数错误?
var j = jQuery.noConflict();
function myHandler() {
alert('triggered');
}
Event.observe(j('#xxx'), 'change', myHandler);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prototype/1.7.3/prototype.min.js"></script>
<input type="text" id="xxx" value="123" />
解决方案
Event.observe()
需要 DOM 元素或元素的 id,因此要么直接传递id
ie xxx
,要么使用.get(index)
/[index]
获取对索引处底层 DOM 元素的引用并将其传递给方法。
var j = jQuery.noConflict();
function myHandler() {
console.log('triggered');
}
Event.observe('xxx', 'change', myHandler);
//Event.observe(j('#xxx').get(0), 'change', myHandler);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/prototype/1.7.3/prototype.min.js"></script>
<input type="text" id="xxx" value="123" />
推荐阅读
- java - 使用 java 上传 csv 文件时,应为 DB 中的每一行添加日期
- jquery - 滚动时单击事件后,活动菜单项不会更改他的类
- r - 将一个数据帧拆分为多个数据帧
- java - RMI 服务器端 java.net.MalformedURLException:未知协议:c
- c# - 使用 Lambda 表达式参数调用通用方法(以及仅在运行时知道的类型)
- regex - 正则表达式以未定义的顺序匹配给定数量的字符
- git - Bitbucket 拉取请求,其中源 repo 是 forkee,目标 repo 是 fork
- vb.net - 如何访问模块中的功能
- csom - 具有基于声明的身份验证的项目服务器内部 2016 CSOM 代码
- javascript - Vue.js,有条件地将项目添加到数组