我正在製作一個簡單的javascript動畫,我使用Uncaught TypeError:無法讀取未定義的屬性'clientX'
clientX來確定動畫對象的位置,但是我得到上面的錯誤。我在這裏做錯了什麼?
這裏是JS代碼:
(function() {
var pos = 0;
var timer;
var anim = {
time: 100,
obj: null,
init: function() {
anim.obj = document.querySelector('#ball');
anim.obj.style.left = 0 + 'px';
anim.cord();
console.log(document.querySelector('.coordonnee').pageX);
},
cord: function (e) {
if (parseInt(anim.obj.style.left) >= parseInt(document.body.offsetWidth - anim.obj.offsetWidth)) {
anim.animBack();
} else {
anim.obj.style.left = parseInt(anim.obj.style.left) + 1 + 'px';
timer = setTimeout(anim.cord, 0.5);
}
anim.myCord(anim.obj.event);
},
animBack: function() {
if (parseInt(anim.obj.style.left) <= 0) {
anim.cord()
} else {
anim.obj.style.left = parseInt(anim.obj.style.left) - 1 + 'px';
timer = setTimeout(anim.animBack, 0.5);
}
},
myCord: function(e) {
var mx = e.clientX;
var y = e.clientY;
console.log(anim.obj.mx);
}
}
anim.init();
})(window);
和HTML代碼:
<!DOCTYPE html>
<html>
<head>
<title>JS animation</title>
<style type="text/css">
#ball {
width: 50px;
height: 50px;
background: #ff45ce;
border-radius: 50%;
-webkit-border-radius: 50%;
position: relative;
left: 0;
}
</style>
</head>
<body>
<div id="ball" ></div>
<script type="text/javascript" src="js/animation.js"></script>
</body>
</html>
預先感謝您爲您的幫助!
您確定要將'anim.obj.event'而不是'e'傳遞給'myCord()'嗎? –
我把e傳給myCord()但我有同樣的問題 –
我的不好,我認爲這個函數是一個事件的回調。 –