Показать сообщение отдельно
  #2 (permalink)  
Старый 19.12.2011, 13:43
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от kuzkuz
Подскажите как справиться с данной проблемой?
Вникать!!!...или хотябы поискать разницу между тем что было и этим вариантом.
<html>
<head>
  <script language="javascript">
var base = 60;
var clocktimer, dateObj, dh, dm, ds, ms;
var readout = '';
var h = 1;
var m = 1;
var tm = 1;
var s = 0;
var ts = 0;
var ms = 0;
var show = true;
var init = 0;
var mPLUS = new Array('m0', 'm1', 'm2', 'm3', 'm4', 'm5', 'm6', 'm7', 'm8', 'm9');
var ii = 0;
var pause = 0;

function clearALL() {
    clearTimeout(clocktimer);
    h = 1;
    m = 1;
    tm = 1;
    s = 0;
    ts = 0;
    ms = 0;
    init = 0;
    show = true;
    readout = '00:00:00.00';
    document.clockform.clock.value = readout;
    var CF = document.clockform;
    for (ij = 0; ij <= 9; ij++) {
        CF[mPLUS[ij]].value = '';
    }
    ii = 0;
}

function addMEM() {
    if (init > 0) {
        var CF = document.clockform;
        CF[mPLUS[ii]].value = readout;
        if (ii == 9) {
            ii = 0;
        } else {
            ii++;
        }
    }
}

function startTIME() {
    var cdateObj = new Date();
    var t = (cdateObj.getTime() - dateObj.getTime()) - (s * 1000);
    if (t > 999) {
        s++;
    }
    if (s >= (m * base)) {
        ts = 0;
        m++;
    } else {
        ts = parseInt((ms / 100) + s);
        if (ts >= base) {
            ts = ts - ((m - 1) * base);
        }
    }
    if (m > (h * base)) {
        tm = 1;
        h++;
    } else {
        tm = parseInt((ms / 100) + m);
        if (tm >= base) {
            tm = tm - ((h - 1) * base);
        }
    }
    ms = Math.round(t / 10);
    if (ms > 99) {
        ms = 0;
    }
    if (ms == 0) {
        ms = '00';
    }
    if (ms > 0 && ms <= 9) {
        ms = '0' + ms;
    }
    if (ts > 0) {
        ds = ts;
        if (ts < 10) {
            ds = '0' + ts;
        }
    } else {
        ds = '00';
    }
    dm = tm - 1;
    if (dm > 0) {
        if (dm < 10) {
            dm = '0' + dm;
        }
    } else {
        dm = '00';
    }
    dh = h - 1;
    if (dh > 0) {
        if (dh < 10) {
            dh = '0' + dh;
        }
    } else {
        dh = '00';
    }
    readout = dh + ':' + dm + ':' + ds + '.' + ms;
    document.clockform.clock.value = readout;
    if (show == true) {
        clocktimer = setTimeout("startTIME()", 10);
    }
}

function findTIME() {
    if (init == 0) {
        dateObj = new Date();
        startTIME();
        init = 1;
    } else {
        if (show == true) {
            show = false;
            pause = new Date();
        } else {
            show = true;
            dateObj = new Date(dateObj.getTime() + (new Date()).getTime() - pause.getTime());
            startTIME();
        }
    }
}
  </script>
  <title></title>
</head>
<body>
<form name="clockform">
  <table border="0" cellpadding="2" cellspacing="0">
    <tbody>
      <tr>
        <td><input name="clearer" value=" reset "
 onclick="clearALL()" type="button"></td>
        <td><input name="clock" size="12"
 value="00:00:00.00"></td>
      </tr>
      <tr>
        <td><input name="marker" value=" m + "
 onclick="addMEM()" type="button"></td>
        <td><input name="starter" value="start / pause"
 onclick="findTIME()" type="button"></td>
      </tr>
      <tr>
        <td><b>m 0</b></td>
        <td><input name="m0" size="12"></td>
      </tr>
      <tr>
        <td><b>m 1</b></td>
        <td><input name="m1" size="12"></td>
      </tr>
      <tr>
        <td><b>m 2</b></td>
        <td><input name="m2" size="12"></td>
      </tr>
      <tr>
        <td><b>m 3</b></td>
        <td><input name="m3" size="12"></td>
      </tr>
      <tr>
        <td><b>m 4</b></td>
        <td><input name="m4" size="12"></td>
      </tr>
      <tr>
        <td><b>m 5</b></td>
        <td><input name="m5" size="12"></td>
      </tr>
      <tr>
        <td><b>m 6</b></td>
        <td><input name="m6" size="12"></td>
      </tr>
      <tr>
        <td><b>m 7</b></td>
        <td><input name="m7" size="12"></td>
      </tr>
      <tr>
        <td><b>m 8</b></td>
        <td><input name="m8" size="12"></td>
      </tr>
      <tr>
        <td><b>m 9</b></td>
        <td><input name="m9" size="12"></td>
      </tr>
    </tbody>
  </table>
</form>
</body>
</html>
Ответить с цитированием