Hirdetés

Keresés

Új hozzászólás Aktív témák

  • Teasüti
    nagyúr

    Márpedig valamit biztosan rosszul számolsz. Írtam egy fiddle-t, kipróbáltam több időzónára állítva a gépemet (persze mindig újraindítva a Chrome-ot), és a timestamp mindig ugyanazt az eredményt adja vissza. A timezoneOffset változik - ami egyébként a mi időzónánkban negatív, azaz adja magát, hogy kivonni kell a mi zónánk idejéhez.

    Az epoch idő konverziót meg itt ellenőriztem. És nekem végig jók lettek a számok.

    Namost a Google Timezone API-t nem ismerem, arról nem tudok nyilatkozni, de megvizslatom mindjárt :N

    getTimezoneOffset() a "The difference, in minutes, between UTC and local time."
    Vagyis GMT+2 zónában -120 eredményt ad, amit szintén összeadással korrigálom a getTime()-ot.

    Ezt a kódot futtatom, ami ebben a formában jó eredményt ad:

    var localtime = Math.floor(new Date().getTime() / 1000);
    var localoffset = new Date().getTimezoneOffset() * 60;
    time = localtime + localoffset;
    //flashLong(time + ' = ' + localtime + localoffset);
    var http =new XMLHttpRequest();
    http.onreadystatechange = function () {
    if (http.readyState==4) {
    var json = JSON.parse(http.responseText);
    var offset = (json.dstOffset + json.rawOffset);
    time = time + offset;
    time = new Date(time*1000); //sec to millisec
    say(city + ' területén a ' + json.timeZoneName + ' szerint jelenleg ' + time.getHours() + ' óra ' + time.getMinutes()+ ' perc van.','com.svox.classic','hun-HUN','media',5,5); //Adott város területén a valamilyen időzóna szerint xx óra yy perc van.

  • Karma
    félisten

    Márpedig valamit biztosan rosszul számolsz. Írtam egy fiddle-t, kipróbáltam több időzónára állítva a gépemet (persze mindig újraindítva a Chrome-ot), és a timestamp mindig ugyanazt az eredményt adja vissza. A timezoneOffset változik - ami egyébként a mi időzónánkban negatív, azaz adja magát, hogy kivonni kell a mi zónánk idejéhez.

    Az epoch idő konverziót meg itt ellenőriztem. És nekem végig jók lettek a számok.

    Namost a Google Timezone API-t nem ismerem, arról nem tudok nyilatkozni, de megvizslatom mindjárt :N

    Megnéztem a Time Zone API-t, és a getTime() + rawOffset + dstOffset nekem helyes eredményt ad :U

Új hozzászólás Aktív témák