Заменить определенные конструкции на странице. Нужен оптимизированный вариант.
Здравствуйте!
В тексте страницы имеются определнные сокращенные ссылки на книги Библии, например: Прочтите данный текст Быт. 3:12, а теперь здесь: Исход 2:11 и т.д. Скрипт должен заменить все эти сокращенные названия на определенную ссылку. В переменной books хранятся все возможные сокращения книги и ее Id, например: books[0]=[ ['Быт.','Быт','Бт'] , [1] ]; books[1]=[ ['Исх.','Исх','Исход'], [2] ]; . . . и т.д всего - 66 элементов После замены должно получиться: Прочтите данный текст <a href="#1-3-12">Быт. 3:12</a>, а теперь здесь: <a href="#2-2-11">Исход 2:11 и т.д. т.е. ссылки содержащие якорь вида #номер_книги_из_массива-глава-стих Интересует оптимальный метод замены, т.к. прогонять по циклу document.body.innerHTML.replace(/xxxxxxxx/g, 'xxxxxxxx2');мне кажется - очень медленный способ. |
ну ясно ,чего ему не тормозить ?
получать всякий раз содержимое страницы... загнать содержимое в переменную и изменять её а не document.body всякий раз - получить содержимое,изменить содержимое,предать содержимое. да и смысл ещё по тегам прицепом проходить? брать содержимое тегов и менять именно содержимое и атрибуты если необходимо -наверно будет побыстрее,тем более если известно в каком типе тегов нужно произвести замену |
если нет других вариантов оптимизации, то помогите регулярку написать для replace(/xxxxxxxx/g, 'xxxxxxxx2') для данной задачи :write:
|
А почему изначально нельзя сгенерить в таком виде? :blink:
|
Цитата:
|
Цитата:
|
Цитата:
|
если хочешь что бы за тебя написали код тебе в раздел работа)
|
Цитата:
|
Часовой пояс GMT +3, время: 08:29. |