我想在一个JavaScript对象内使用addEventListener,并且我的代码不正确。说实话,我不完全确定如何正确编码。就目前来看,当我尝试定义addEventListener时,'button1'无法识别。请有人建议?如何在对象中使用addEventListener
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title> </title>
<style>
#wrap{
margin-top: 30px;
margin-left: 30px;
}
.btn{
font-size: 20px;
width: 65px;
height: 45px;
}
</style>
</head>
<body>
<div id="wrap">
<button id="btn1" class="btn">btn1</button>
<button id="btn2" onclick="pub.moveRight('btn2','60px')" class="btn">btn2</button>
</div>
</body>
<script src="test40.js"></script>
</html>
我JS:
var pub = {
button1: function() {
return document.getElementById('btn1');
},
btn1EventHandler: function() {
button1.addEventListener('click', function() {
changeColor('btn1', '#33FFFF');
});
}(),
changeColor: function (id, color) {
var element = document.getElementById(id);
element.style.backgroundColor = color;
},
name: 'smith',
moveRight: function (id, pixels) {
var ele = document.getElementById(id);
ele.style.marginLeft = pixels;
}
};
@MuhammadUsman - 很显然,你没有尝试。 'Uncaught TypeError:无法读取未定义的属性'button1' - 第7行test40.js' – enhzflep
为什么用'()'调用'btn1EventHandler'? – 2015-09-14 07:05:18