Umieść znaczniki wokół tekstu zaznaczonego przez użytkownika?
Muszę uzyskać wybrany obszar tekstu przez użytkownika, a następnie wstawić<a>
tagi wokół niego.
Używam tego, aby uzyskać wybrany obszar użytkownika:
var textComponent = document.getElementById('article');
var selectedText;
if (document.selection != undefined)
{
textComponent.focus();
var sel = document.selection.createRange();
selectedText = sel.text;
}
// Mozilla version
else if (textComponent.selectionStart != undefined)
{
var startPos = textComponent.selectionStart;
var endPos = textComponent.selectionEnd;
selectedText = textComponent.value.substring(startPos, endPos)
}
Teraz wiem, że mogę wykonać przeszukiwanie ciągów wybranego tekstu użytkownika i wstawić wokół niego tagi, ale co się stanie, jeśli na przykład zaznaczony tekst użytkownika pojawi się dwa razy w tekście.
Cześć do ciebie, do widzenia.
Jeśli użytkownik podświetli drugie „ty” dla żądanego łącza, na pewno ciąg znaków zastąpi znaczniki wokół każdego wystąpienia „ty”.
Co jest najlepszym sposobem na to?