以前一直用jquery,没有审图了解到function的多种用法和类的用法,简单会用就能上手jquery了;现在回头认真学javascript,发现搜了很久都没办法代替jq里面的触发事件的方法,比如
以前jquery,想让某个dom触发事件,要写
<script src="jquery-1.9.1.min.js" type="text/javascript"></script>
<script type="text/javascript">
function al()
{
alert("I'm aaaa");
}
$(document).ready(function() {
$("#aaa").click(function (){
al();
})
});
</script>
<input type="button" value="aaaaaa" id="aaa">
这样就可以控制id为aaa的触发onclick事件了;
如果用js的话,就要
<script type="text/javascript">
function al()
{
alert("I'm aaaa");
}
</script>
<input type="button" value="aaaaaa" id="aaa" onClick="al()">
所以,我想问,有没有用js的方法模拟jquery里的click事件一样,可以让触发事件的代码和前端代码分开?还有前提是不能用js在input上添加一个onclick的方法,也不能使用其他库,
你可以先写个函数
function addEvent(elm, evType, fn) {
if (elm.addEventListener) {
elm.addEventListener(evType, fn, false);
return true;
}
else if (elm.attachEvent) {
var r = elm.attachEvent('on' + evType, fn);
return r;
}
else {
elm['on' + evType] = fn;
}
}
再通过这个进行事件的绑定
addEvent(document.getElementById('aaa'),'click',function(){
al();
});
请在DOM ready之后再进行事件绑定哦~~
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。