praegune kellaaeg 18.06.2025 23:39:36
|
Hinnavaatlus
:: Foorum
:: Uudised
:: Ärifoorumid
:: HV F1 ennustusvõistlus
:: Pangalink
:: Telekavad
:: HV toote otsing
|
|
autor |
|
Negaal
HV vaatleja

liitunud: 03.10.2008
|
12.04.2009 02:24:04
Postitamisel tsitaadi lisamine ning smilide sisestamine..(Adminnid/serverile ligipääsuga inimesed - vaadake) |
|
|
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 |
|
 |
siLc
HV Guru
liitunud: 22.12.2003
|
12.04.2009 13:04:53
|
|
|
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
|
|
Kommentaarid: 196 loe/lisa |
Kasutajad arvavad: |
   |
:: |
0 :: |
0 :: |
185 |
|
tagasi üles |
|
 |
|
lisa lemmikuks |
|
|
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.
|