Avaleht
uus teema   vasta Vaidlused »  Parem HV »  Postitamisel tsitaadi lisamine ning smilide sisestamine..(Adminnid/serverile ligipääsuga inimesed - vaadake) märgi kõik teemad loetuks
märgi mitteloetuks
vaata eelmist teemat :: vaata järgmist teemat
Hinnavaatlus :: Foorum :: Uudised :: Ärifoorumid :: HV F1 ennustusvõistlus :: Pangalink :: Telekavad :: HV toote otsing
autor
sõnum Saada viide sõbrale.  :: Teata moderaatorile teata moderaatorile
otsing:  
Negaal
HV vaatleja
Negaal

liitunud: 03.10.2008




sõnum 12.04.2009 02:24:04 Postitamisel tsitaadi lisamine ning smilide sisestamine..(Adminnid/serverile ligipääsuga inimesed - vaadake) vasta tsitaadiga

Tere tegin täna natuke pikema posti ja kasutasin tsiteerimist üpris palju ning ka smile.
Alati kui kasutasin siis viskas kirjad teksti lõppu ning scroll lendas ülesse. Siis pidin oma teksti uuesti üles otsima ja tekkinud teksti vajalikule kohale asetama.
Ega ajas natuke meele mustaks küll ja kuna midagi targemat teha polnud otsustasin parandada ja ümber teha.
(Praegu uue teema tegemisel on sama asi, lisab smaili teksti lõppu..)

http://pastebin.me/49e122053a1c3

function GetCaretPosition (ctrl) {
var CaretPos = 0;
if (document.selection) {
  ctrl.focus ();
  var Sel = document.selection.createRange();
  var SelLength = document.selection.createRange().text.length;
  Sel.moveStart ('character', -ctrl.value.length);
  CaretPos = Sel.text.length - SelLength;
}
  else if (ctrl.selectionStart || ctrl.selectionStart == '0')
  CaretPos = ctrl.selectionStart;
  return (CaretPos);
}



function setCaretPosition(elem, caretPos) {

    if(elem != null) {
        if(elem.createTextRange) {
            var range = elem.createTextRange();
            range.move('character', caretPos);
            range.select();
        }
        else {
            if(elem.selectionStart) {
                elem.focus();
                elem.setSelectionRange(caretPos, caretPos);
            }
            else
                elem.focus();
        }
    }
}

function emoticon(myValue) {
  where = document.post.message;
  cp = GetCaretPosition(where) + myValue.length;
  //IE
  if (document.selection) {
    where.focus();
    sel = document.selection.createRange();
    sel.text = myValue;
  }
  //MOZILLA/NETSCAPE
  else if (where.selectionStart || where.selectionStart == '0') {
    startPos = where.selectionStart;
    endPos = where.selectionEnd;
    where.value = where.value.substring(0, startPos) + myValue + where.value.substring(endPos, where.value.length);
  } else {
    where.value += myValue;
  }
  setCaretPosition(where, cp); 
}

function quoteSelection() {
    tag = 'quote';
    where = document.post.message;
    theSelection = '';
    theSelection = where.value.substr(where.selectionStart, (where.selectionEnd - where.selectionStart)); 
    if (theSelection == false){
      if (window.getSelection){
        theSelection = window.getSelection();
      }else if (document.getSelection){
        theSelection = document.getSelection();
      }else if (document.selection){
        theSelection = document.selection.createRange().text;
      }
    } 
    cp = GetCaretPosition(where) + ((tag.length * 2)+5) + theSelection.length;
    if (theSelection) {                 
      emoticon('\n['+tag+']' + theSelection + '[/'+tag+']\n');
      setCaretPosition(where, cp);
    }
    return;
}


Ainuke asi et 2 esimest, GetCaretPosition ja SetCaretPosition käivad kaasas koos emoticoni() ja QuoteSelection() funktsioonidega.

Kui on viitsimist siis võiks keegi ära vahetada, kood palun võtta sellest teemast mitte lingist.(muutsin ühe pisiasja ja ei viitsi enam uppida)

Edit: Kummaline, avastasin just et IE's ikka töötab mingil määral.
Edit: kuid mitte Firefoxis, Chrome'is ning töenäoliselt ka Operas..
Kommentaarid: 3 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 3
tagasi üles
vaata kasutaja infot saada privaatsõnum
siLc
HV Guru

liitunud: 22.12.2003



Autoriseeritud ID-kaardiga

sõnum 12.04.2009 13:04:53 vasta tsitaadiga

IE`s töötab jah aga Firefoxis endalgi olnud pinnuks silmas, et smailid lendavad postitamisaknas eranditult teksti lõppu ja mitte sinna, kuhu neid esialgu tahtsin panna.

Teema võiks tõsta Parem HV alla thumbs_up.gif
Kommentaarid: 196 loe/lisa Kasutajad arvavad:  :: 0 :: 0 :: 185
tagasi üles
vaata kasutaja infot saada privaatsõnum
näita postitusi alates eelmisest:   
uus teema   vasta Vaidlused »  Parem HV »  Postitamisel tsitaadi lisamine ning smilide sisestamine..(Adminnid/serverile ligipääsuga inimesed - vaadake)
[vaata eelmist teemat] [vaata järgmist teemat]
 lisa lemmikuks
näita foorumit:  
 ignoreeri teemat 
sa ei või postitada uusi teemasid siia foorumisse
sa ei või vastata selle foorumi teemadele
sa ei või muuta oma postitusi selles foorumis
sa ei või kustutada oma postitusi selles foorumis
sa ei või vastata küsitlustele selles foorumis
sa ei saa lisada manuseid selles foorumis
sa võid manuseid alla laadida selles foorumis



Hinnavaatlus ei vastuta foorumis tehtud postituste eest.