Zdravím, mám problém, jak v Opeře 12 v userscriptu se dostat k pravému objektu document.
Problém je v document.querySelectorAll(něco), který mi vrací prázdný NodeList, ačkoli by měl vždy obsahovat např 10 záznamů. Userscript funguje, načte se, mám tam testovací alert nebo console.log na začátku. (V opeře 12 se to řeší pomocí Místní nastavení - Skriptování - složka skriptů -což je i cesta k souboru navzdory popisku)
Problém není v nepřipravenosti dokumentu, protože mi to nefunguje ani, když obsah souboru s userscriptem zabalím do setTimeout na 15 sekund, kdy je stránka zcela jistě načtená.
Nefunguje to ani, když si manuálně dám breakpoint na nějaký řádek userscriptu (tak, že v developer tools si na zalozce scripty otevřu dané jméno userjs a dám breakpoint a reload) - prostě objekt document sice má některé property danéhotabu (url, domain), ale dotazy na dom vrací prádzné množiny.
Samozřejmě když si daný dotaz queryselector spustím v konzoli po načtení stránky lážo plážo, kdy nejsem uvnitř žádného breakpointu, tak samozřejmě vrací správné výsledky.
jakým způsobem tedy dostat do userscriptu pravý document? Řešil jsem to už i v nějakém současném webkit browseru, tam se mi to povedlo taky nějakým trikem zprovoznit (unsafewindow, @grant, timeout, eval, .write() apod, už nevím a teď to nemohu dohledat)