2
雖然我嘗試使用onclick
嘗試觸發函數,但是當我進入控制檯時,每次點擊時都會出現此錯誤消息它:錯誤:未定義類型錯誤:undefined不是函數
Uncaught TypeError: undefined is not a function
這是我如何定義我的功能:
var myfunction = function() {
我知道這是無關的功能,雖然我把它後,我做它,它工作正常。
我也檢查是否通過在onclick放置一個警報點擊,雖然工作正常。
我知道這是一個普遍的問題,雖然看了別人,什麼都沒發現。
http://jsfiddle.net/Hive7/DQnmF/
的JavaScript:
var attack = function() {
while (slaying === true) {
if (youHit !== 1) {
totalDamage = totalDamage += damageThisRound;
document.getElementById('hit').style.display = 'inline';
//alert('You hit!!! ' + totalDamage * 10 + ' damage');
health = health - totalDamage * 10;
setTimeout(function(){document.getElementById('health').style.width = health + 'px'}, 400);
setTimeout(function(){document.getElementById('hit').style.display = 'none'}, 500);
if (totalDamage >= 4) {
//alert('the dragons dead');
slaying = false;
}
} else {
document.getElementById('miss').style.display = 'inline';
setTimeout(function(){document.getElementById('miss').style.display = 'none'}, 500);
//alert('You missed');
}
slaying = false;
}
}
document.getElementById('character').style.color = '#ccc';
document.getElementById('enemy').style.position = 'absolute';
document.getElementById('enemy').style.right = '0';
document.getElementById('game').style.position = 'relative';
document.getElementById('game').style.width = '1004px';
document.getElementById('characters').style.position = 'relative';
document.getElementById('health-container').style.right = '0';
document.getElementById('health-container').style.position = 'absolute';
document.getElementById('health-container').style.bottom = '30px';
document.getElementById('health-container').style.width = '200px';
document.getElementById('health-container').style.height = '41px';
document.getElementById('health').style.backgroundColor = 'red';
document.getElementById('health').style.height = '41px';
document.getElementById('health').style.width = '200px';
document.getElementById('miss').style.position = 'absolute';
document.getElementById('miss').style.right = '20px';
document.getElementById('miss').style.bottom = '120px';
document.getElementById('miss').style.display = 'none';
document.getElementById('hit').style.position = 'absolute';
document.getElementById('hit').style.right = '20px';
document.getElementById('hit').style.bottom = '120px';
document.getElementById('hit').style.display = 'none';
var slaying = true;
var youHit = Math.floor(Math.random() * 6 + 1);
var totalDamage = 0;
var damageThisRound = Math.floor(Math.random() * 4 + 1);
var num = document.getElementById('health').style.width.length - 2;
var health = document.getElementById('health').style.width;
health = health.substring(0, num);
attack();
你「的MyFunction」的聲明可能是一些功能裏面,你想從函數外部使用它。 – Pointy
你可以用jsFiddle重現問題嗎? – j08691
儘管我不確定 – Hive7