>>tjp
-- du bruger et par uhensigtsmæssigheder:
-- for det første er det smartest at hente den korrekte funktion, når man skal have tiden, så er scriptet mere læseligt:
function getTimeStamp(s){
var dt = new Date();
if (s != 0 && !isNaN(s)) {
dt = new Date(dt.getTime() + s * 1000);
}
-- og så et dumt at benytte en af de mest ressourcekrævende javascript-ting, nemlig eval ...
-- i dette tilfælde er det endda fuldstændigt overflødigt:
function setInnerHTML(objectId, strText) {
document.getElementById(objectId).innerHTML = strText;
}
-- at det så kan være smart at gøre det en anelse anderledes, så det er fremtidssikret er så noget andet, nemlig f.eks.
function setInnerHTML(objectId, strText) {
document.getElementById(objectId).firstChild.nodeValue = strText;
}
-- og:
<span id="msghere"> </span>
-- og så bruger du på en helt misforstået måde java script: pseudoprotokollen, som kun hører hjemme i src og hrefs, hvor der ellers kan stå en url, for det er selvfølgelig ikke nødvendigt at fortælle javascript-fortolkeren, at den skal tolke script, der står i en script-event som script !-)
-- så væk med den !o]
-- og en enkelt forbedring mere kunne jeg også sætte ind to steder, så det samlet bliver:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "
http://www.w3.org/TR/html4/loose.dtd"><html>
<script>
function getTimeStamp(s){
var dt = new Date();
if (s != 0 && !isNaN(s)) {
dt = new Date(dt.getTime() + s * 1000);
}
var hour = dt.getHours();
var minute = dt.getMinutes();
var second = dt.getSeconds();
return "Beskeden sendes kl.: " + hour + ":" + (minute>9?"":"0") + minute + ":" + (second>9?"":"0") + second + " ";
}
function setInnerHTML(objectId, strText) {
document.getElementById(objectId).firstChild.nodeValue = strText;
}
</script>
<body>
<span id="msghere"> </span>
<form>
<input type="button" onclick="setInnerHTML('msghere',getTimeStamp(6))" value="Send!">
</form>
</body>
</html>