remove redirects - skryptozakładka ??

w dziale Opera
golebiow6 napisał(a):

Czy jest możliwość by opera filtrowała linki ? W tym sensie by z długiego linku wybierał tylko jego część?? Link ma strókturę:
adres_strony_url=adres_strony&link=jakiś_ciąg_znaków
czy mozna tak skonfigurować Operę by wybierała zawsze tylko ten środkowy adres strony ??

W FireFoxie do tego służyła skryptozakładka remove redirects na tej stronie
http://www.squarefree.com/bookmarklets/pagelinks.html


skrypt skryptozakłądki :

java[b][/b]script:[b][/b](function(){var k,x,t,i,j,p; for(k=0;x=document.links[k];k++){t=x.href.replace(/[%]3A/ig,':').replace(/[%]2f/ig,'/');i=t.lastIndexOf('http');if(i>0){ t=t.substring(i); j=t.indexOf('&'); if(j>0)t=t.substring(0,j); p=/https?\:\/\/[^\s]*[^.,;'">\s\)\]]/.exec(unescape(t)); if(p) x.href=p[0]; } else if (x.onmouseover&&x.onmouseout){x.onmouseover(); if (window.status && window.status.indexOf('://')!=-1)x.href=window.status; x.onmouseout(); } x.onmouseover=null; x.onmouseout=null; }})();


czy jest możłiwość zrobienia czegoś takiego w Operze ??

woj-tek napisał(a):

A ja mam problem z tymi zakładkami [fajna sprawa tak btw...]. Otóż jeżeli ma się _ODZNACZONĄ_ opcję 'Reuse exiisitng page' to... nie działają... :/ Da się jakoś pogodzić te dwie opcje?

Mayor napisał(a):

hmm a nie działa Ci w Operze? ja sprawdziłem na chybił trafił pare skryptozakładek z tej strony i działały mi pod operą, zreszta tam obok przycisku są ikonki w jakich przeglądarkach działają

swoją drogą sprawdziłem też ten "hrefs as links text" przy którym jest tylko ikonka mozilli, a mimo to działa mi w operze, podejrzewam więc ze wszystkie działają

przeciągnij sobie któreś na personal bar i sam sie przekonaj

//hmm wydaje się że wszystkie będą działać, a na pewno większość; właśnie zrobiłem sobie folderek na pasku osobistym z najciekawszymi z nich, póki co wszystie działają na stronach

//edit łał! fajne jest np. "character count" (tu), które na bieżąco zlicza i wyświetla ilość znaków wpisywanych w formularzach
przydatne na standardowej bramce era omnix gdzie celowo nie ma żadnego licznika znaków (coby zachecić ludzi do zmiany na płatną) a smsy muszą być bardzo krótkie; teraz już będe widział ile mam do końca ;] screeen

//edit2 łał albo wprowadzanie zmian do CSS na żywca tu, wyskakuje okienko i cokolwiek się pisze jest od razu ładowane na stronie eek
świetna sprawa te bookmarklety, musze im sie lepiej przyjrzeć

//edit3, fakt, niektóre są tylko pod mozille

TomekQ napisał(a):

Sztuczne rozwiazanie - za kazdym razem przeciagaj je z paska osobistego/panelu na karte w ktorej chcesz je uzyc. Ale chyba lepiej pamietac zeby trzymac shift przy otwieraniu wink

woj-tek napisał(a):

Ale trzymanie shifta wymaga sięgania do klawiatury... możnaby posiłkować się środkowym klawiszem myszy, ale on działa tylko na głównym pozycjach Personal bar, jak mamy tam jakiś folder to na odnośnikach w tym folderze środkowy klawisz już nie działa... Podobnie nie da się przeciągnąć skryptozakładki z takiego foldera... i tak źle i tak niedobrze sad

Muton napisał(a):

Chciałem sobie "zamontować" ten character count (fajna sprawa hehe) jako przycisk na pasku adresu i nie chce tak działać :/ Tzn. działa dopóki nie zrestartuje Opery. Po ponownym starcie klikanie na niego już nic nie daje. Gdy jest w Pasku osobistym wszystko jest ok. Kod przycisku wygląda tak:

Button8, "character count"="Go to page, "javascript:(function(){var D=document,i,f,j,e;for(i=0;f=D.forms[i];++i)for(j=0;e=f[j];++j)if(e.type==", , "Licznik", "Counter""  

Czy ktoś może mi wyjaśnić takie dziwne zachowanie Opery? Z góry dziękuję za pomoc!!!

Mayor napisał(a):

bo to jest bookmarklet (od bookmark - zakładka), czyli ponaszemu skryptozakładka

zakładka to odpowiednik "ulubionych" z IE, czyli link
skrypt w nazwie odnosi sie do tego że ten link zawiera javascript

to tak jakbyś otworzył pustą stronę z coś robiącym javascriptem, tyle że da się ten javascript otworzyć bez otwierania pustej strony, a cały pic polega własnie na tym że opera traktuje go jako zwykły link i tak też go otwiera, wywołując kod js, który ładznie działa na bieżącej stronie

jak przeciągniesz to na jakikolwiek inny pasek to opera będzie go traktowała jako button (przycisk) a nie link
możesz jeszcze spróbować zrobić przycisk z Go to page="wkleić kod" (nie próbowałem)

PS. mnie bardzo się podoba skryptozakładka "test styles" (LINK), ale pomimo że na stronie jest symbol że działa i w Mozilli i Operze to u mnie działa tylko w Mozilli; ktoś może potwierdzić niedziałanie? + może jak ktoś by się znał to poprawić żeby działało w Operze? angel

szyk napisał(a):

Obcięło Ci końcówkę. Z tymi javascriptami tak czasem jest, jak się przeciąga przyciski, na Twoim miejscu dodałbym ręcznie wpis do standard_toolbar.ini.

Edycja.
Po dodaniu na pasek główny, a potem stamtąd na pasek adresu, w obu miejscach ta skryptozakładka działa prawidłowo, ale po restarcie Opery już nie. sad

d.i.z. napisał(a):

Originally posted by Mayor
PS. mnie bardzo się podoba skryptozakładka "test styles" (LINK), ale pomimo że na stronie jest symbol że działa i w Mozilli i Operze to u mnie działa tylko w Mozilli; ktoś może potwierdzić niedziałanie? + może jak ktoś by się znał to poprawić żeby działało w Operze? angel


W źródle bookmarkleta poszukaj ciągu window.opera i zmień na cokolwiek co nie istnieje np. window.operetka albo 0 itp.
No i jeszcze ten ciąg MSIE trzeba zmienić jeżeli mamy ustawioną identyfikację na IE.

Opera jest jakoś specjalnia traktowana a okazuje się, że nie powinna.

Fajnie favikonka migocze przy wpisywaniu smile

Mayor napisał(a):

dzięki!, teraz działa
poniżej adres skryptozakładki gotowy do wklejenia we właściwościach linka jeśli by kogos interesowało (spolszczyłem komunikat)

java[b][/b]script:(function(){function init(){var newline=unescape("%"+"0A");dead=false;oldCSS=null;x=opener;ta=document.f.ta;ta.select();ta.value="/* Wprowadź tu regułki CSS a będą one ładowane natychmiast"+newline+"dla wszystkich stron z '"+location.host+"'"+newline+"tak długo jak długo pozostawisz to okienko otwarte */"+newline+newline;update();}function update(){try{if(!x||x.closed){ta.style.backgroundColor="#ddd";return;}x.bookmarkletStyleSheet;}catch(er){ta.style.backgroundColor="#fdc";setTimeout(update,150);dead=true;return;}if(dead){dead=false;ta.style.backgroundColor="";oldCSS=null;}if(!x.testStyles){var newSS;newSS=x.document.createElement("link");newSS.rel="stylesheet";newSS.type="text/css";x.document.getElementsByTagName("head")[0].appendChild(newSS);x.testStyles=newSS;oldCSS=null;}if(oldCSS!=ta.value){oldCSS=ta.value;if(window.operetka)x.testStyles.href="javascript:unescape('"+escape(ta.value)+"')";else if(navigator.userAgent.indexOf("Operetka")!=-1)x.testStyles.href="javascript:unescape('"+escape(escape(ta.value))+"')";else x.testStyles.href="data:text/css,"+escape(ta.value);}setTimeout(update,150);}y=window.open('','','resizable,width=500,height=300');y.document.write('<title>New CSS Style Sheet</title><style>.ec { width: 100%; height: 100%; border: none; margin: 0px; padding: 0px; }</style><body class="ec"><form name="f" style="margin: 0px;" class="ec"><textarea name="ta" wrap="soft" style="margin: 0px; border: 0px; width:100%; height:100%;" class="ec"></textarea><script>'+update+init+'init();<'+'/script>');y.document.close();})()



słowa "java script" mają być razem (czyli javascript) ale forum zniekształca kod; najlepiej zrobić cytat mojego posta i skopiowac ze źródła

testuj style.png

TomekQ napisał(a):

Fajna zabawka:)

Originally posted by Mayor
słowa "java script" mają być razem (czyli javascript) ale forum zniekształca kod; najlepiej zrobić cytat mojego posta i skopiowac ze źródła

Jeśli chcesz wstawić "javascript:costam" w kodzie wstaw "[b[b][/b]][/b]" gdzies w środku "javascript:" np: "java[b[b][/b]][/b]script:costam"smile
P.S. zacytuj, żeby zobaczyć;)
P.P.S. Niektórzy używają &#97; jako 'a' - działa także dla przycisków.

Mayor napisał(a):

tak ale jak kod jest długi i nudny wink to wole się nie bawić w znajdywanie gdzież to forum mogłoby cos zniekształcić tylko poradzić skopiowanie ze źródła posta albo dołaczyć załącznik z txt kodu

Mayor napisał(a):

fajną konsolke do testowania CSS podrzucił mi non-troppo -> obrazek

można ją znaleźć w setupach "Web Developer Toolbar" i w "Jekyll and Hyde", zwłaszcza ten drugi jest ciekawy http://nontroppo.org/wiki/JekyllandHyde

btw. zobacz w nim co potrafi przycisk "Kill" wink (to a propo adblockowania)

konsola CSS jest w menu styli (ostatnia pozycja)

Originally posted by szyk
Obcięło Ci końcówkę. Z tymi javascriptami tak czasem jest, jak się przeciąga przyciski, na Twoim miejscu dodałbym ręcznie wpis do standard_toolbar.ini.

Edycja.
Po dodaniu na pasek główny, a potem stamtąd na pasek adresu, w obu miejscach ta skryptozakładka działa prawidłowo, ale po restarcie Opery już nie. sad

a jednak musi się dać dodać; we spomnianym konfigu "Dr Jekyll & Mr. Hyde" są przyciski z bookmarklets (i ofkoz działają mi po restarcie opery)

przykładowo "Kill" w toolbar.ini wygląda tak:
Button3, "Kill"="Go to page, "javascript:var b=new Array();var c=1;document.onkeydown=ck;el=document.getElementsByTagName('*');for(i=0;i<el.length;i++){if(el[i].tagName.search(/(HTML|BODY)/i)==-1){if(el[i].title) el[i].oldTitle=el[i].title;el[i].title='click to remove '+el[i].tagName+'  (ESC to exit)';el[i].onclick=function(e){t=this;if(window.event) e=window.event;if((t==e.target)||(window.event)) t.parentNode.removeChild(t);if(window.opera) e.stopPropagation();return false;};el[i].onmouseover=function(){if(!c)return;c=0;t=this;b[t]=t.style.backgroundColor;t.style.background='red';};void(el[i].onmouseout=function(){t=this;t.style.backgroundColor=b[t];c=1;});}}function ck(e){k=window.event?window.event.keyCode:e.keyCode;if(k==27) {for(i=0;i<el.length;i++){if(el[i].tagName.search(/(HTML|BODY)/i)==-1){el[i].oldTitle?el[i].title=el[i].oldTitle:el[i].removeAttribute('title');el[i].onclick=null;el[i].onmouseover=null;el[i].onmouseout=null;el[i].style.backgroundColor=b[t];}}}}", , , "webdev-dev""

Muton napisał(a):

Obcięło Ci końcówkę. Z tymi javascriptami tak czasem jest, jak się przeciąga przyciski, na Twoim miejscu dodałbym ręcznie wpis do standard_toolbar.ini.
Edycja. Po dodaniu na pasek główny, a potem stamtąd na pasek adresu, w obu miejscach ta skryptozakładka działa prawidłowo, ale po restarcie Opery już nie.



No tak, wstawiłem zły kod wink, zauważyłem to już wcześniej, ale potem trochę jeszcze kombinowałem i musiałem znowu przyciski tworzyć i zapomniałem to zmienić. Bardzo interesujące jest dlaczego to działa tylko do restartu Opery :/ Może ktoś zna odpowiedź?

PS. Skrypt kill rzeczywiście działa za każdym razem. Ja nic z tego już nie rozumiem smile

szyk napisał(a):

Dobra, już wiem. Trzeba w javascriptowym kodzie zamienić wszystkie cudzysłowy " na apostrofy '. Wtedy po restarcie przycisk będzie działał.

confused sherlock idea up happy

GrLT napisał(a):

Originally posted by Mayor

//edit łał! fajne jest np. "character count" (tu), które na bieżąco zlicza i wyświetla ilość znaków wpisywanych w formularzach przydatne na standardowej bramce era omnix gdzie celowo nie ma żadnego licznika znaków (coby zachecić ludzi do zmiany na płatną) a smsy muszą być bardzo krótkie; teraz już będe widział ile mam do końca ;]


Czy u Ciebie to działa dobrze? U mnie owszem znaki się zliczają ale jako efekt uboczny mam to że stronka nie zgłasza mi że przekroczyłem limit znaków, dopóki nie kliknę "Wyślij" ... sad Niezupełnie o to mi chodziło żeby liczyć ręcznie... rolleyes

wickoo napisał(a):

a jak sobie wstawic character county do opery? bo jakos drag&drop mi nie dziala.. a przeklejony kod mi nie dziala :/

GrLT napisał(a):

Originally posted by wickoo
a jak sobie wstawic character county do opery? bo jakos drag&drop mi nie dziala.. a przeklejony kod mi nie dziala :/


U mnie to działa tak; trzeba to dodać do bookmarków, a potem wejśc na stronkę którą chcemy i kliknąć pozycję z bookmarka. Ale z bookmarków już możesz sobie łatwo przeciągnąć to gdzie chcesz... cool

Mayor napisał(a):

faktycznie javascript liczący znaki jakoś wyłacza js ograniczający ilość i wywalający komunikat

ja to traktuje tak: limit długości SMSa na tamtej bramce Era Omnix to 124 znaki
ilość znaków w polu numer jest dowolna (wiadomo że jest 9)
do ilości znaków wlicza się podpis, więc jeżeli masz na imię np. "Alan" to wiesz że pisząc smsa Twój limit to 120 znaków

i teraz wiesz że jak zbliżasz się do 117, 118 to zostały Ci dwa znaki

nie wiem, być może dałoby się tego javascripta poprawić tak zeby współpracował z tym oryginalnym (tj. nie wyłaczał go) alr to już raczej działka d.i.z.'a wink

@wickoo zwyczajnie przeciągasz go jak button ze strony, najpierw do góry a potem już dowolnie, tyle ze musisz go upuścić na pasku osobistym (ten z linkami) lub jak nie masz to do zakładek przy otwartym oknie paneli (ja tak robiłem, tj. stworzyłem folder "skryptozakładki" i tam przeciągałem te które mnie interesowały), we właściwościach foldera dałem zeby był widoczny na pasku osobistym i tam mam szybki dostep do wszystkich

personal bar.png

wickoo napisał(a):

ee.. dobra, sa w zakladkach smile i co teraz? nie pokazuje mi sie licznik wprowadzonych znakow sad

Mayor napisał(a):

kliknąć tą skyptozakładke będąc na stronie na której chcesz jej użyć
kuna nie podoba mi się ta nazwa..może jakiś skrócik? skryptka? skratka? javalink? javatka? wink

wickoo napisał(a):

ee..
1) to bez sensu tak klikac ;] nie da sie tego inaczej rozwiazac?
2) otwiera sie pusta strona i nic..

Muton napisał(a):

szyk napisał(a)
Dobra, już wiem. Trzeba w javascriptowym kodzie zamienić wszystkie cudzysłowy " na apostrofy '. Wtedy po restarcie przycisk będzie działał.



Dzięki!!! Jesteś wielki smile Teraz już nie ma z tym żadnych problemów smile
cheers

d.i.z. napisał(a):

Originally posted by Mayor
nie wiem, być może dałoby się tego javascripta poprawić tak zeby współpracował z tym oryginalnym (tj. nie wyłaczał go)


Teoretycznie powinno się dać przy wykorzystaniu addEventListener ale mi się nie udało tego zrobić (coś nie chce działać). Także tutaj może pomóc tylko ktoś, kto się zna na JS smile

d.i.z. napisał(a):

Originally posted by Mayor
nie wiem, być może dałoby się tego javascripta poprawić tak zeby współpracował z tym oryginalnym (tj. nie wyłaczał go)


Dzisiaj nauczyłem się pewnej rzeczy i od razu przypomniał mi się ten wątek ;)

Bookmarklet, który zlicza ilość znaków nie usuwając przy tym oryginalnych funkcji strony (specjlanie dla podstawowej bramki era omnix) ;)
[PHP]javascript:(function(){var D=document,i,f,j,e;for(i=0;f=D.forms;++i)for(j=0;e=f[j];++j)if(e.type=="text"||e.type=="password"||e.tagName.toLowerCase()=="textarea")S(e);function S(e){if(!e.N){var x=D.createElement("span"),s=x.style;s.color="green";s.background="white";s.font="bold 10pt sans-serif";s.verticalAlign="top";e.parentNode.insertBefore(x,e.nextSibling);function u(){x.innerHTML=e.value.length;}u();e.addEventListener('change',u,false);e.addEventListener('keyup',u,false);e.addEventListener('input',u,false);e.N=x;}else{e.parentNode.removeChild(e.N);e.N=0;}}})()[/PHP]
Lepiej późno niż wcale ;)

Mayor napisał(a):

miło ;]

jednak zapuściłem bramcie era omnix, odpaliłem nowego bookmarklets i..działa chyba jak poprzednio bo zdołałem wprowadzić ponad 300 znaków do formularza i nic nie wyskoczyło

d.i.z. napisał(a):

Dziwne, u mnie działa na bramce podstawowej

Mayor napisał(a):

mój błąd, a raczej clipboard error wink skopiowałem jeszcze raz do bookmarkleta Twoje code i działa jak na obrazku, czyli ok