TOPlist

Pixylophone - komentáře

Komentáře (od nejstarších po nejnovější)

Komentáře k příspěvku Javascriptové odkazy


[1] Vložil(a): raven [web], 2003-12-04, 18:01 Solo | MuteČtenáři: ---

hmm, tak presne, tak jak mas ty postupy serizeny se vyvijel muj postup v JS odkazech... :) ted uz jen to posledni reseni... ;)

[2] Vložil(a): zjoova, 2003-12-04, 18:15 Solo | MuteČtenáři: ---

Tak ja jsem se postupem casu dopracoval az k onClick="return !funkce(this.href)" - ma to tu vyhodu, ze pokud se nepovede funkci provest (uzivatel ma zablokovane pop-upy, chyba ve funkci...) pak funkce vraci false, negaci se to obrati na true a provede se tedy ten normalni odkaz, neni to zablokovane tim natvrdo danym "return false". Ale taky netvrdim ze neexistuje lepsi reseni :-)

[3] Vložil(a): pixy [web], 2003-12-04, 18:19 Solo | MuteČtenáři: ---

ad [2] > Ano, to je taky dobrý. Sice jsem tam chtěl původně taky napsat něco podobného, ale přišlo mi, že už bych to komplikoval až moc (otočit si logiku umí každý programátor a laiky to akorát zmate) ;)

Ale jinak díky, výborné doplnění.

[4] Vložil(a): Daniel.Peder@infoset.cz [web], 2003-12-04, 19:30 Solo | MuteČtenáři: ---

Uvedené metody mají ještě jeden podstatný háček: browser neposílá referer.

Pokud je referer potřeba, a já jsem to shodou okolností řešil právě včera :-O, tak je tu ještě jedna varianta:

podsouvat nové url zpátky do původního hrefu a nechat onclick-event proběhnout normálně.

Všimněte si, že není nutno vracet žádnou hodnotu prostřednictvím funkce "return", a browser se navíc zachová zcela standardně, tj. nová stránka obdrží referer na původní stránku. Geniální, ehh?

Všimněte si (2), že se pro tyto účely do javascriptové funkce neposílá hodnota this.href alébrž celá reference na původní element "A", tj. pouze this. Což má ještě další kladný vedlejší účinek, a tím je zkrácení zdrojového HTML kódu o 5B na každý <a href... :))

Úspěšně testováno na:
IE: 6.0
OPERA: Opera 7.01
MOZILLA: rv:1.2.1, Gecko/20021130

Příklad:

...
<a href="http://www.infoset.cz" onclick="foo(this)">hop</a>
...

javascript:
function foo( a )
{
  a.href="http://www.infoset.cz/nejake-url/"
}

[5] Vložil(a): pepak, 2003-12-04, 20:34 Solo | MuteČtenáři: ---

[4] Daniel Peder: A ma to tvoje reseni jeste nejakou jinou vyhodu nez tu, ze se neuzivatel javascriptu pravdepodobne nikam k uzitecnymu obsahu nedostane?

[6] Vložil(a): Pavel Kout [web], 2003-12-04, 20:48 Solo | MuteČtenáři: ---

Javascriptové odkazy mne čím dál víc vytáčí. Fantastické jsou weby, které mají text přestylovaný tak, aby se tvářil jako odkaz (vč. pseudotřídy :hover), ale dokud se nenačte skript, tak se můžu uklepat a prd z toho. Už existuje pěkná řádka webů, na které kvůli těm odkazům-neodkazům nechodím. Třeba na takovém www.lordoftherings.net mi nefunguje skoro nic, ať tam jdu s Operou, Geckem nebo IE. Asi jsem holt jenom hloupatej uživatel a podobný weby nejsou pro mně...

[7] Vložil(a): Daniel.Peder@infoset.cz [web], 2003-12-05, 00:00 Solo | MuteČtenáři: ---

ad:[5] ale jak jsi prisel na to ze se nikam nedostane, neuzivatel javascriptu se samozrejme dostane na stejne misto, anebo na jine misto, to uz zalezi na tvem konkretnim zameru. Kdyby sis precetl cely pixyho clanek, bylo by ti to jasny.

Každopádně to co tu popisuju funguje i bez javascritpu, a piš si, že právě to jsem si taky pořádně testoval neb to úzce souvisí s účelem, pro který jsem tuhle variantu vyvíjel.

ad:[6] jsou javascriptové odkazy špatně napsané a dobře napsané, nemůžeš je všechny házet do jednoho pytle.

[8] Vložil(a): Michal Kubeček, 2003-12-05, 02:58 Solo | MuteČtenáři: ---

Ono by bohatě stačilo, kdyby se autoři drželi univerzálního pravidla: nejdřív napsat plně funkční stránku bez JavaScriptu a pak teprve začít přemýšlet, jak (a jestli vůbec) ji JavaScriptem vylepšit. Spousta jich to bohužel dělá obráceně: nejdřív napíše stránku s JavaScriptovými vychytávkami a pak teprve začne přemýšlet, jak to udělat, aby to fungovalo i bez JavaScriptu. A konečně existuje početná skupina, která postupuje podle druhého modelu, ale přemýšlet nezačne vůbec... :-)

[9] Vložil(a): Robert, 2003-12-05, 07:31 Solo | MuteČtenáři: ---

[4] jen tak mimochodem, kdyz uz jsme u toho javascriptu, tak ty vase stranky ( www.infoset.cz ) mi napr. v Mozille vubec nefunguji....

[10] Vložil(a): met [web], 2003-12-05, 08:12 Solo | MuteČtenáři: ---

ad [9]: Ano, my je mame v bugzille jiz nejakou dobu http://bugzilla.czilla.cz/show_bug.cgi?id=109 a to jsem uz v cervenci posilal panu Pederovi zadost o napravu.

Kdyz jsem si ted precetl [4], tak bych preci jen cekal lepsi pristup. Co je platne, ze nekdo umi vyresit odkazy a pamatovat v nich i na referer, kdyz se pak poradne nezobrazi ani titulni stranka jeho spolecnosti ;-( To bych radsi nekoho, kdo JavaScript neumi vubec, ale stranky si prectu.

Peder>Neberte to prosim jako osobni napadani z me strany, spise jako vyraz absolutniho nepochopeni.

[11] Vložil(a): Petr, 2003-12-05, 08:47 Solo | MuteČtenáři: ---

Ha, koukam ze se Pixy chytil na muj priklad s javascriptovymi odkazy ktery jsem uvedl v predminule debate ;-)

[12] Vložil(a): Daniel.Peder@infoset.cz [web], 2003-12-05, 13:55 Solo | MuteČtenáři: ---

[9] & [10] ... ;)

[13] Vložil(a): met [web], 2003-12-05, 14:02 Solo | MuteČtenáři: ---

ad [12]: Ano, ted jsem si nasel vasi odpoved z cervenci a byla presne stejna jako ted.
Nezbyva mi nez dodat - co si otakovych lidech mame myslet?

[14] Vložil(a): Marabu, 2003-12-05, 15:20 Solo | MuteČtenáři: ---

Cili kombinaci reseni R. Pichlika a vaseho reseni dostavam zhruba

<a href="http://www.example.org" onclick="return winopen(this.href)">example.org</a>

<script type="text/javascript" >
  function winopen(url){
    wasOpen = false;
    win = window.open(url);
    return (typeof(win)=='object') ? true : false;
  }
</script>

[15] Vložil(a): Marabu, 2003-12-05, 15:24 Solo | MuteČtenáři: ---

Jeste by to chtelo tam pridat nejaky parametr - obcas se hodi vedet ze tam de clovek javascriptem - bez javascriptu budete nejspis zobrazovat celou stranku se vsim vsudy...

[16] Vložil(a): Daniel.Peder@infoset.cz [web], 2003-12-06, 00:25 Solo | MuteČtenáři: ---

ad [13]: jestli mate nejaky e-mail, napiste mi, zajdem na pivo a muzete se me zeptat osobne, taky bych se vas na par veci rad zeptal :)

[17] Vložil(a): ynezz, 2003-12-07, 15:33 Solo | MuteČtenáři: ---

[8] V XHTML už nemůžeš používat target="" a jinak než javascriptem nové okno neotevřeš ;)


Váš názor

Přidat nový komentář

Váš komentář

Přidávání komentářů k tomuto příspěvku již bylo ukončeno.

Chcete-li autorovi přesto sdělit nějakou podstatnou informaci, která se příspěvku týká, kontaktujte jej e-mailem.



 RSS 0.9x  Export  RDF  Export  RSS 0.9x  Komentáře  TXT  Komentáře  XHTML 1.0  Validate  W3C  CSS 2.1  Em-web  Resizable  W4D  90% dogmatic

Vygenerováno: [stránka generována dynamicky]