Как обернуть промежуток вокруг части текста в JavaScript? - PullRequest
2 голосов
/ 19 ноября 2008

У меня есть разметка, как это:

<p>one two three four</p>

И я хочу использовать javascript, чтобы преобразовать его в это:

<p>one <span>two three<span> four</p>

У меня есть смещение и длина секции, которую я хочу обернуть в промежуток, в данном случае offset = 4 и length = 9. Если использование jQuery может сделать это проще, это предпочтительнее.

1 Ответ

4 голосов
/ 19 ноября 2008

Разве это не маленький дубликат вопроса Выделите слово с помощью jQuery ?

Может пригодиться что-то вроде плагина подсветки поиска JQuery

Или, как указал в том же вопросе , напишите свою собственную функцию jquery:
Что-то вроде (непроверенный код, не стесняйтесь редактировать):

jQuery.fn.addSpan = function (elName, str, offset, length)
{
    if(this.innerHTML = str)
    {
        return this.each(function ()
        {
            this.innerHTML = this.innerHTML.substring(0,offset) + "<span>" + this.innerHTML.substring(offset, offset+length) + "</span>" + this.innerHTML.substring(offset+length));
        });
    }
};

И вы бы использовали это так:

$("p").addSpan("one two three four", 4, 9);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...