特定的javascript/html问题

Specific javascript/html issue

本文关键字:html 问题 javascript      更新时间:2023-09-26

如果有人可以结账http://jsfiddle.net/fdzVq/再借给我一双眼睛,那就太神奇了。div应该更改为所提供的消息之一,但它什么也不做。

JS:

function getPowerMsg(kj){
var kwh = kj * 0.00027777777777778;
var stuff = [["an LED night light", 0.5],["a clock radio", 4],["a night light", 5]];        
for(var i=0; i<stuff.length; i++){
var item = stuff[i][0];
var watts = stuff[i][1];
var kwatts = watts/1000;
            var hours = (Math.floor((kwh/kwatts)*2)/2);
            if(hours > 0){
                results.push([item, convertTime(hours)]);
            }
        }
        return results[randbetween(0,results.length-1)];
}
function convertTime(hrs){
        var msg = "";
        if(hrs < 24){
            msg = hrs+" hour";
            if(hrs != 1){ msg += "s"; }
            if(hrs < 1){ msg = "a half hour"; }
        }else if(hrs == 24){
            msg = "a full day";
        }else if(hrs < 33){
            msg = "over a day";
        }else if(hrs < 39){
            msg = "about a day and a half";
        }else if(hrs < 48){
            msg = "almost 2 days";
        }else if(hrs == 48){
            msg = "2 days";
        }else if(hrs < 60 ){
            msg = "over 2 days";
        }else if(hrs < 72){
            msg = "almost 3 days";
        }else if(hrs == 72){
            msg = "3 days";
        }else{
            msg = "over 3 days";
        }
        return msg;
}
function changePowerMsg(num){
    var x = document.getElementById("powermsg");
    var y = getPowerMsg(num);
    x.innerHTML = y;
}

HTML:

<div id="powermsg">Hi</div>
<a href="javascript:;" onclick="javascript: changePowerMsg(200);">Change!</a>

几件事。

  • jsFiddle:在中更改为nowrap
  • 结果未定义,因为它未声明
  • randbetween未定义,因为它未声明
  • 您不必在onclick或href中指定javascript:
  • 这是一个稍微清理过的JS版本

一般来说,您应该记住浏览器中内置的javascript调试器,因为这正是它们的用武之地,而且大多数现代浏览器都为您提供了这一功能。以下并不是一个详尽的列表,但有了这个,你应该会有一个大致的想法。

  • IE中的访问调试器
  • FF中的访问调试器
  • Chrome中的Access调试器