Autor | Zpráva | ||
---|---|---|---|
djlj Profil |
#1 · Zasláno: 22. 11. 2010, 13:35:09 · Upravil/a: djlj
Všiml jsem si hezké vychytávky na idnesu - když označíte a zkopírujete třeba větu nebo odstavec (u jednotlivých slov to nefunguje), přidá se Vám za kopírovaný text ještě i odkaz na zdroj, například:
Chřiby neboli Buchlovské hory se příliš výraznými kopci chlubit nemohou. Jeden z nich však stojí za to – vypíná se naproti známému Buchlovu, jmenuje se Holý kopec a měří 548 m. Budete-li mít štěstí na počasí, spatříte z něj Beskydy i Alpy. Zdroj: http://cestovani.idnes.cz/odkud-dohlednete-od-beskyd-az-po-alpy-utajeny-holy-kopec-ve-chribech-1pr-/igcechy.asp?c=A101115_142325_igcechy_tom Zkoušel jsem kuchat jejich javascript, ale nemá to smysl... Rád bych ale tuhle vychytávku taky někde použil. Víte někdo, jak na to? Já nad tím strávil kus soboty, ale nepřišel jsem na to. |
||
Chamurappi Profil |
#2 · Zasláno: 22. 11. 2010, 13:55:57
Reaguji na djlje:
Zkus službu Tynt.com. Nedávno jsem takový skript narychlo vyráběl, protože zadavatel nechtěl použít Tynt, možná o něm napíšu článeček na Interval, až ho trochu učešu a vylepším. |
||
__construct Profil |
#3 · Zasláno: 22. 11. 2010, 14:30:15
djlj:
„Já nad tím strávil kus soboty, ale nepřišel jsem to.“ Možno sa časom naučíš lepšie hľadať: je to skript na 16. riadku <script type="text/javascript" src="http://g.idnes.cz/js/uni/uni.js?rr=014"></script>
Nenašiel si ho pretože je "zpakovaný" Stačí použiť nejaký JSBeautifier a máš to… Tu máš objekt ktorý sa o to stará: var Copylink = { tweakSelection: function () { if (document.selection) return Copylink.tweakSelectionIE(); return Copylink.tweakSelectionMoz() }, tweakSelectionIE: function () { var top = document.documentElement.scrollTop; var range = document.selection.createRange(); if (!Copylink.lengthTest(range.text)) return null; var selectedHTML = range.htmlText; var temp = Copylink.createCopy(selectedHTML); var textRange = document.body.createTextRange(); textRange.moveToElementText(temp); textRange.select(); return function () { temp.parentNode.parentNode.removeChild(temp.parentNode); range.select(); document.documentElement.scrollTop = top } }, tweakSelectionMoz: function () { var selection = window.getSelection(); if (!selection) return null; if (!Copylink.lengthTest(selection.toString())) return null; var range = selection.getRangeAt(0); var temp = Copylink.createCopy(); temp.insertBefore(range.cloneContents(), temp.firstChild); var tempRange = document.createRange(); tempRange.selectNode(temp); selection.removeAllRanges(); selection.addRange(tempRange); return function () { temp.parentNode.parentNode.removeChild(temp.parentNode); selection.removeAllRanges(); selection.addRange(range) } }, createCopy: function (selectedHTML) { var div = document.createElement("div"); div.style.cssText = "position: absolute; left: -5000px; width: 1px; height: 1px; overflow: hidden"; var bq = document.createElement("blockquote"); bq.innerHTML = (selectedHTML || "") + "<p>Zdroj: <a href=\"" + location.href + "\">" + location.href + "</a></p>"; document.body.appendChild(div); div.appendChild(bq); return bq }, catchSelection: function () { var revert = Copylink.tweakSelection(); if (revert) setTimeout(revert, 1) }, lengthTest: function (text) { if (text.replace(/^\s*|\s*$/g, "").split(/\s/).length > 10) return true }, init: function () { if (document.cookies.read("pernament")) return; if ("oncopy" in document.documentElement) document.documentElement.oncopy = Copylink.catchSelection; else if (window.addEventListener) { window.addEventListener("copy", Copylink.catchSelection, false) } } }; |
||
Chamurappi Profil |
#4 · Zasláno: 22. 11. 2010, 14:59:05 · Upravil/a: Chamurappi
Reaguji na __constructa:
Hm, to je krasavec, sám bych to lépe nenapsal… až na to slůvko pernament. K použití tohoto skriptu ovšem těžko dostane od idnes.cz licenci :-) |
||
djlj Profil |
#5 · Zasláno: 23. 11. 2010, 02:57:41 · Upravil/a: djlj
__construct:
Já věděl, že to je zakodované, ale nevěděl jsem, jak to dostat do čitelné podoby, díky moc! Chamurappi: Nevadí, podle tohoto už jsem si našel téměř stejný kód zdarma ke stažení: http://molily.de/weblog/selectionmenu-copylink Tak díky oběma! |
||
Chamurappi Profil |
#6 · Zasláno: 23. 11. 2010, 13:35:31
Reaguji na djlj:
„podle tohoto už jsem si našel téměř stejný kód zdarma ke stažení“ Hm, tak to je bomba. Člověk se s tím zdlouhavě programuje a ladí to, pak pro to pár hodin vymýšlí nějaký pěkný název … a ono celou dobu stačilo jen vymyslet ten název a hodit ho do vyhledávače? To není fér! :-) (Skript uvedený v [#3] jsem psal já. Připadám si jak Cimrman před patentovým úřadem…) |
||
Časová prodleva: 13 let
|
0