定時まで後何時間?

仕事が無くて暇すぎです。。。

<html>
<head>
<title>teijimade</title>
<script type="text/javascript">
function duration(millisecond) {
    
    // milli => sec
    var second  = parseInt( millisecond / 1000 );
    var r_milli = millisecond % 1000;

    // sec => min
    var minute = parseInt( second / 60 );
    var r_sec  = second % 60;

    // min => hour
    var hour  = parseInt( minute / 60 );
    var r_min = minute % 60;

    hour   = hour.toString().length  == 2 ? hour : '0'  + hour;
    minute = r_min.toString().length == 2 ? r_min : '0' + r_min;
    second = r_sec.toString().length == 2 ? r_sec : '0' + r_sec;
    millisecond = r_milli.toString().length == 3 ? r_milli 
                : r_milli.toString().length == 2 ? '0' + r_milli : '00' + r_milli;
    return hour + ':'+ minute + ':' + second + ':' + millisecond;
}

function timer() {
    // 現在日時 
    var date = new Date();

    // 目標日時 19:00
    var add = 0;
    var target = new Date();
    target.setHours(19,0,0,0);
    var delta  = target.getTime() - date.getTime();

    return delta;
}


window.onload = function(){

    var h1 = document.createElement('h1');
    h1.style.fontSize = '150px';
    h1.style.textAlign = 'center';

    var delta = timer();
    var text  = document.createTextNode( duration(delta) );
    h1.appendChild(text);

    var body = document.getElementsByTagName('body');
    body[0].appendChild(h1);

    setInterval(function() {
        var delta = timer();
        var text  = document.createTextNode( duration(delta) );
        h1.replaceChild(text, h1.firstChild);
    }, 1);                    
};
</script>
</head>
<body>
</body>
</html>