Versio

Cursor tussen UBB codes

Overzicht Reageren

Henk en Annie

Henk en Annie

25/09/2009 16:18:00
Quote Anchor link
Aangezien ik niet in de koffiehoek kan komen stel ik mijn vraag hier wel..

Ik zit nu met de volgende code voor mijn UBB parser:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
    function addUbbcode(code) {
    document.add.bericht.value += code
    document.add.bericht.focus()
    }


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
Ik voeg dan bijvoorbeeld [b][/b] toe met de volgende code:
<a href="javascript:addUbbcode('[b][/b]')"><img src='images/bold.png' title='Dikgedrukt' border='0' alt='Dikgedrukt' /></a>


Hoe zorg ik ervoor dat de cursor dan tussen de tags komt te staan?

Dan heb ik ook nog een knop om een url/afbeelding in te voegen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
function img(){
var img = prompt("URL:", "http://www.link-afbeelding.nl/afbeelding.jpg");
document.add.bericht.value += "[img]" + img + "[/img]";
document.add.bericht.focus()
}


Hoe kan ik ervoor zorgen dat er niks wordt toegevoegd als je op annuleren drukt? Want nu komt er als link "null" te staan.
 
PHP hulp

PHP hulp

24/05/2012 08:37:09
Gesponsorde koppelingen:
BHosted Hosting al vanaf € 1,- per maand

Controleer nu gratis jouw domeinnaam:

  
 
Jan Willem van der Veer

Jan Willem van der Veer

25/09/2009 16:34:00
Quote Anchor link
function img(){
var img = prompt("URL:", "http://www.link-afbeelding.nl/afbeelding.jpg");
if(img.length > 0){ // zou kunnen zijn dat je moet testen op de standaardwaarde + '' of evt zelfs op null.
document.add.bericht.value += "Wrong image";
document.add.bericht.focus()
}
}
 
Henk en Annie

Henk en Annie

25/09/2009 18:11:00
Quote Anchor link
En hoe zorg ik ervoor dat de pointer tussen de twee tags komt?
 
Jan Willem van der Veer

Jan Willem van der Veer

25/09/2009 18:20:00
Quote Anchor link
Dat zul je moeten doen door middel van de selection-objects.
In IE is dat document.selection en voor de meeste andere browsers is dat window.getSelection/selectionStart/selectionEnd (misschien ondersteunt IE8 ook al wel window.getSelection).

Kijk anders eens hier: http://the-stickman.com/web-development/javascript/finding-selection-cursor-position-in-a-textarea-in-internet-explorer/
 
Martin Essink

Martin Essink

25/09/2009 18:37:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
<script type="text/javascript">
//from: mylittleforum.org
function insertext(what)

 {

  if (document.form.bericht.createTextRange)

   {

    document.form.bericht.focus();

    document.selection.createRange().duplicate().text = what;

   }

  else if ((typeof document.form.bericht.selectionStart) != 'undefined') // für Mozilla

   {

    var tarea = document.form.bericht;

    var selEnd = tarea.selectionEnd;

    var txtLen = tarea.value.length;

    var txtbefore = tarea.value.substring(0,selEnd);

    var txtafter =  tarea.value.substring(selEnd, txtLen);

    var oldScrollTop = tarea.scrollTop;

    tarea.value = txtbefore + what + txtafter;

    tarea.selectionStart = txtbefore.length + what.length;

    tarea.selectionEnd = txtbefore.length + what.length;

    tarea.scrollTop = oldScrollTop;

    tarea.focus();

   }

  else

   {

    document.form.bericht.value += what;

    document.form.bericht.focus();

   }

 }
 

</script>


haal het er maar uit
 
Henk en Annie

Henk en Annie

26/09/2009 11:11:00
Quote Anchor link
@martin: jouw script werkt gedeeltelijk, hij wordt iig toegevoegd waar je je cursor neer zet, alleen kan ik de tags niet om geselecteerde tekst plaatsen en de cursor wordt niet tussen de tags geplaatst.

@jan: ik heb alle wegen geprobeerd, maar ik krijg m niet werkend...
 
Jan Willem van der Veer

Jan Willem van der Veer

26/09/2009 11:33:00
Quote Anchor link
Quote:
ik heb alle wegen geprobeerd, maar ik krijg m niet werkend...
Wat krijg je niet werkend? Krijg je er ook foutmeldingen bij? Graag iets specifieker :D
 
Henk en Annie

Henk en Annie

26/09/2009 12:27:00
Quote Anchor link
ik heb geprobeerd om er een functie van te maken, maar dat lukte niet echt.
de code die ik daarbij probeerde heb ik ook niet meer.
ik kreeg het niet voor elkaar om het script te gebruiken...
een voorbeeldje? :$
 
Mark L

Mark L

26/09/2009 13:08:00
Quote Anchor link
Zoek anders even op 'caret JS' bij google. De cursor heet namelijk eigenlijk caret. Er staat genoeg informatie op internet, als je maar de goede benaming weet.
 



Overzicht Reageren

Get Adobe Flash player