Autor | Zpráva | ||
---|---|---|---|
Jirka_0 Profil * |
#1 · Zasláno: 16. 5. 2010, 21:19:41
Zdravím,
v JavaScriptu jsem docela dlouho nedělal, a tak se chci zeptat, jak se zkopíruje označený text na stránce do schránky (jakoby simulace CTRL + C). Jde mi o to, že si dělám takový skript do Firefoxu, že po kliknutí na záložku mě to automaticky otevře nový panel a dá mi označené slovo vyhledat v Googlu. Díky |
||
Witiko Profil |
#2 · Zasláno: 16. 5. 2010, 21:54:33
Nejedná se o mojí tvorbu, pouze o moji úpravu cizí práce. Funkce navrátí označený text, případně false, pokud není schopná text získat.
function getSel() { if(document.getSelection) { return document.getSelection(); } else if (document.selection&&document.selection.createRange) { return document.selection.createRange().text; } else { return false; } } |
||
Jirka_0 Profil * |
#3 · Zasláno: 16. 5. 2010, 22:40:19
Tak to by fungovalo, teďka jen, jak udělám, aby se otevřelo nové okno (v lepším případě panel, ale to bude asi těžší [možná pomůže, že to bude jen pro FF]).
Výsledek pak hodím sem. Díky. |
||
Jirka_0 Profil * |
#4 · Zasláno: 16. 5. 2010, 22:55:11
Tak jsem skončil u tohoto:
javascript:var oznacenyText;if(document.getSelection) { oznacenyText = document.getSelection(); } else if (document.selection&&document.selection.createRange) { oznacenyText = document.selection.createRange().text; } window.open("http://www.google.cz/search?q="+oznacenyText); Skoro to dělá to, co má.. Chyba je taková, že v původním panelu (kde ten text označím) se vše vymaže a zobrazí se jen "[object Window]" a titulek se nastaví právě na ten javascriptový kód. |
||
Witiko Profil |
#5 · Zasláno: 16. 5. 2010, 23:51:52
Pokud jde o bookmarklet jen pro firefox, vystačíš si jen s getSelection. Toto by mělo fungovat:
javascript:window.open("http://www.google.cz/search?q="+encodeURIComponent(document.getSelection()));void(0); A toto by mělo fungovat ve všech prohlížečích: javascript:var txt = document.getSelection?document.getSelection():document.selection.createRange().text;if(txt)window.open("http://www.google.cz/search?q="+encodeURIComponent(txt));void(0); |
||
Jirka_0 Profil * |
#6 · Zasláno: 17. 5. 2010, 13:23:39
To je přesně ono, díky.
|
||
Časová prodleva: 14 let
|
0