Autor | Zpráva | ||
---|---|---|---|
juriad Profil |
#1 · Zasláno: 18. 1. 2013, 13:36:17 · Upravil/a: juriad
Test case:
1/ Kliknout do odpovědní textarei v něajkém vláknu 2/ Napsat text 3/ Kliknout mimo textarea 4/ Kliknout do odpovědní textarei Předpokládaný výsledek: v textarei bude text napsaný během kroku 2 Skutečný výsledek: obsah textarei se smaže Projevuje se mi ve FF, refresh stránky nepomůže. Má s tím problém ještě někdo, nebo je chyba na mé straně? aha, konzole je zaspamovaná: "NS_ERROR_FAILURE: Component returned failure code: 0x80004005 (NS_ERROR_FAILURE) [nsIDOMStorage.setItem]", tady chyba je podle googlu v mém prohlížeči |
||
Chamurappi Profil |
#2 · Zasláno: 18. 1. 2013, 14:40:28
Reaguji na juriada:
„chyba je podle googlu v mém prohlížeči“ Ale i na mé straně, že si tu výjimku neodchytávám a nezařídím se podle toho. Když jsem psal kus skriptu, který může způsobovat smazání textu, hodně jsem nad tím váhal, jestli je to dobrý nápad, ale nakonec mi to vyšlo jako logická možnost. Text příspěvku se průběžně ukládá do localStorage , což je samo o sobě docela bez komplikací (tedy asi až na možný výskyt zmíněného selhání), potíž nastává v okamžiku, kdy si člověk otevře v tomtéž prohlížeči stejnou stránku víckrát. Musím se v takové situaci nějak postarat o sesynchronizování všech <textarea> , jinak by nešlo předvídat, která verze rozepsaného příspěvku se do localStorage uloží.
Synchronizaci provádím v okamžiku, kdy dostane <textarea> focus. Takže se běžně v případě, že byl rozepsaný příspěvek v jiném okně už odeslán (nebo uživatelem vymazán z formuláře), <textarea> vyprázdní. Tobě se tedy z nějakého důvodu děje totéž, aniž bys příspěvek odesílal či mazal.
|
||
juriad Profil |
#3 · Zasláno: 18. 1. 2013, 22:42:23
K chybě docházelo ve funkci zapis; celé to bylo způsobené mým upgradem systému (arch linux) se spuštěným firefoxem, nějak se pohádaly knihovny a bohužel toto byl jediný projev problémů. Myslím, že se jedná o tak exotickou diskonfiguraci, že to není třeba řešit.
|
||
Chamurappi Profil |
#4 · Zasláno: 19. 1. 2013, 02:05:31
Reaguji na juriada:
Ze zkušeností z jiného serveru vím, že localStorage.setItem selhává i obyčejnějším lidem. Přesné důvody neznám, ale výjimka vyskakuje. Tuším, že ji umí způsobovat mimo jiného i privátní režim v mobilním Safari.
|
||
Časová prodleva: 11 let
|
0