Autor | Zpráva | ||
---|---|---|---|
Pan X Profil |
#1 · Zasláno: 19. 6. 2009, 17:30:45
zdravím, mám takový menší problém. Potřebuji udělat něco podobného jako je zde na diskusi v psaní příspěvků (ta editace textu příspěvku nebo postu). Koukal jsem na zdejší javascript. Je tam toto:
function getTextareaSelection() { var textarea = document.forms["postMsg"].elements["poslText"]; if (typeof textarea.selectionStart != 'undefined') { var selection = textarea.value.substring(textarea.selectionStart, textarea.selectionEnd); } else if (typeof document.selection != 'undefined') { var selection = document.selection.createRange().text; alert(selection); } else { //alert('Bug!'); } return selection; } Všechno mi s tímto kouskem funguje OK, ale já bych to potřeboval udělat na <div> toto slouží jen na textarea. Skoušel jsem si to nějak přizpůsobit sám, ale nepovedlo se. Já mám <div id="obsah"> který funguje podobně jako textarea u Vás na diskusi. Mohl by mi někdo z šikovnějších JavaScriptařů poradit jak to poupravit, aby to šlo i na div? Předem díky |
||
Chamurappi Profil |
#2 · Zasláno: 19. 6. 2009, 17:48:42
Reaguji na Pana X:
Vyzobnul sis ze zdejšího skriptu špatnou funkci, hned pod „getTextareaSelection“ je „getDocumentSelection“ a ta asi dělá přesně to, co chceš. Využívá se tu mimochodem při citování. |
||
Pan X Profil |
#3 · Zasláno: 19. 6. 2009, 18:29:47
Chamurappi
Ta ale vybírá celý obsah ne? Já potřebuji aby mi to vybralo jen tu část co označím a pak kliknu na TUČNĚ a ono mi to udlěá <b>neco co sem vybral</b> To tato fce nedělá ne? |
||
Suta Profil |
#4 · Zasláno: 19. 6. 2009, 19:30:09 · Upravil/a: Suta
Pan X
„Ta ale vybírá celý obsah ne? “ (getDocumentSelection) Ne, tato funkce vybírá přesně pouze označený text ve stránce. Před pár dny jsem řešil podobný problém. Taky jsem použil princip ze zdejšího fora. Můžeš mrknout sem, udělal jsem si testovací stránku, po označení textu jak v divu (levý vrchní obdélník, tak v textaeře (levý spodní obdélník) se po označení textu text zkopíruje (upravíš dle potřeby...). Vím že jsem musel vyřešit problém, kdy tuším opera nebrala text z textarey při použití funkce getDocumentSelection, proto je v hlavním kódu: window.document.onmouseup = function() { oznacenyText = getDocumentSelection(); if(oznacenyText=="") { oznacenyText = getTextareaSelection(); } if(oznacenyText!="") { document.getElementById("kopie").innerHTML = oznacenyText; } oznacenyText=""; } Mrkni na celý kód ve stránce, snad ti to pomůže. |
||
Pan X Profil |
#5 · Zasláno: 19. 6. 2009, 19:49:02 · Upravil/a: Pan X
Suta
Díky moc, to je přesně to co jsem potřeboval. Ještě jednou moc díky Chamurapi tobě samozřejmě také |
||
Pan X Profil |
#6 · Zasláno: 19. 6. 2009, 19:50:40 · Upravil/a: Pan X
Suta
už nic :) |
||
Časová prodleva: 15 let
|
0