Почему new Date() не перезаписывается поверху?
Есть простой кодик. Хочу каждую секунду добавлять к часикам секунду и выводит на экран. Цифра меняется, а дата которая должна вытекать из этой цифры почему-то нет... https://jsfiddle.net/65h877xc/
<div id="timestamp">0</div>
<script>
var timestamp=0;
var timerId = setInterval(function() {
timestamp=timestamp+1;
document.getElementById('timestamp').innerHTML=new Date(timestamp)+"||||"+timestamp;
}, 1000);
</script>
|
буду секунду тогда прибавлять
<div id="timestamp">0</div>
<script>
var timestamp=0;
lll=new Date(timestamp);
// начать повторы с интервалом 1 сек
var timerId = setInterval(function() {
lll.setSeconds(lll.getSeconds() + 1);
document.getElementById('timestamp').innerHTML=lll;
}, 1000);
</script>
вот полный код, который берет API времени со стороннего сервера и начинает к нему прибавлять секунду https://jsfiddle.net/qLcqueov/4/ таким образом можно сделать часы не привязанные к времени на компьютере. |
Цитата:
|
Цитата:
var utcDate = new Date(Date.UTC(96, 11, 1, 0, 0, 0)); вот это не принимает мой timestamp |
Цитата:
|
sovsem-nub,
<div id="timestamp">0</div>
<script>
var timestart = performance.now();
var d = Date.UTC(96, 11, 1, 0, 0, 0);
// начать повторы с интервалом 1 сек
var timerId = setInterval(function() {
var x = (performance.now()- timestart)|0;
document.getElementById('timestamp').innerHTML= new Date(d + x).toUTCString() ;
}, 673);//значение интервала не важно, лучше меньше 1000
</script>
|
то есть если 1000 миллисекунд складывать 60 раз, то не факт, что минута получится? какая там погрешность набегает?
и как получить время если изначально только секунды var d = Date.UTC(1480845285504); не работает |
Цитата:
|
Цитата:
|
Цитата:
Invalid Date :-? |
sovsem-nub,
var d = 1480845285504; |
Спасибо! Тогда с поправками Рони получилось так https://jsfiddle.net/qLcqueov/6/
надеюсь теперь часы правильные :)
<div id="timestamp">0</div>
<script>
var timestamp=0;
function time100(){
time100.cb=function(t,r){
//alert("На сервере"+new Date(t)+" На компью "+new Date(r))
timestamp=t;
};
}
time100();
i=document.createElement("script")
i.setAttribute("src", "//time100.ru/api.php?type=cb&t="+new Date().getTime())
j=document.getElementsByTagName("head").item(0)
j.appendChild(i)
window.onload = function() {
var timestart = performance.now();
// начать повторы с интервалом 1 сек
var timerId = setInterval(function() {
var x = (performance.now()- timestart)|0;
document.getElementById('timestamp').innerHTML= "гринвич " +new Date(timestamp + x).toUTCString() +"<br>местное "+ new Date(timestamp + x) +"<br>на компе "+ new Date() ;
}, 673);//значение интервала не важно, лучше меньше 1000
}
</script>
Соответственно, если поменяете время на своем компе, то поменяется только последнее значение. |
| Часовой пояс GMT +3, время: 13:47. |