Ik ben begonnen met de bouw van een eigen UBB editor. Ik heb een aantal functies, zoals CTRL-B om tekst bold maken en CTRL-U om de onderstrepen. Als de gebruiker de eerste keer CTRL-B intikt, wil ik dat er een b-tag in de editor verschijnt. De gebruiker kan dan de tekst typen die bold moet worden. Als hij nogmaals CTRL-B tikt, moet de /b-tag ingevoegd worden. Ik moet dus in een array bijhouden welke tags open staan. Ik probeerde dat met onderstaande code:
De array zou er dus als volgt uit kunnen zien:
De inhoud van de editor zou er dan bv. als volgt uit zien:
Door op CTRL-B en CTRL-U te drukken, zou na 'onderstreept' de afsluitende [/b] en [/u] tag ingevoegd moeten worden.
Mijn probleem: ik weet niet hoe ik een array element in javascript kan deleten. Ik heb gezocht via google en kwam op slice, splice en pop, maar hiermee kun je alleen het laatste of eerste element verwijderen. Ik wil graag zelf het element dat verwijderd moet worden, kunnen definieren. Dus probeerde ik "delete txtOpenTags['b'] ipv txtOpenTags.pop(). Maar dit werkt niet. Hoe kan ik wel een gedefinieerde value uit een array halen?
Ik heb spaties gebruikt bij de UBB tags [ b ] en [ u ], omdat de GoT parser anders wat op hol sloeg
JavaScript:
1
2
3
4
5
6
7
8
9
10
| var txtOpenTags = []; if (txtOpenTags.inArray('b')) { delete txtOpenTags['b']; text = '[ /b ]'; } else { txtOpenTags.push('b'); text = '[ b ]'; } |
De array zou er dus als volgt uit kunnen zien:
JavaScript:
1
| txtOpenTags = ['b', 'u']; |
De inhoud van de editor zou er dan bv. als volgt uit zien:
code:
1
| Dit is een [ b ]stukje[ /b ] tekst dat ik [ b ][ u ]bold en onderstreept |
Door op CTRL-B en CTRL-U te drukken, zou na 'onderstreept' de afsluitende [/b] en [/u] tag ingevoegd moeten worden.
Mijn probleem: ik weet niet hoe ik een array element in javascript kan deleten. Ik heb gezocht via google en kwam op slice, splice en pop, maar hiermee kun je alleen het laatste of eerste element verwijderen. Ik wil graag zelf het element dat verwijderd moet worden, kunnen definieren. Dus probeerde ik "delete txtOpenTags['b'] ipv txtOpenTags.pop(). Maar dit werkt niet. Hoe kan ik wel een gedefinieerde value uit een array halen?
Ik heb spaties gebruikt bij de UBB tags [ b ] en [ u ], omdat de GoT parser anders wat op hol sloeg
[ Voor 5% gewijzigd door Verwijderd op 30-11-2006 22:44 ]