Показать сообщение отдельно
  #16 (permalink)  
Старый 20.02.2016, 15:51
без статуса
Отправить личное сообщение для Deff Посмотреть профиль Найти все сообщения от Deff
 
Регистрация: 25.05.2012
Сообщений: 8,219

Цитата:
if(cod){
var stack = [], j=-1, bound = '==bound==';
a.mess = (a.mess).replace(cod, function (s,p1,p2,p3){
stack[++j]=[p1,p2,p3]; return bound+j+bound;
});
}
if(sp_cod){
var stack = [], j=-1, bound = '==bound=='; //строка лишняя
a.mess = (a.mess).replace(sp_cod, function (s,p1,p2,p3){
stack[++j]=[p1,p2,p3]; return bound+j+bound;
});
}
По идее все блоки c кодами нужно складывать в один стек и индекс j продолжать наращивать, а не сбрасывать в -1
Либо заводить на каждый иной блок код новый массив стека, с иным именем(не вижу в этом смысла)
И ставя второй раз stack = [] - вы убили все данные, добавленные в Первом цикле
================
Про спойлер,
Есть некий Вариант с прописыванием своих собственных функций обработки
Парсинг BBcode
Ответить с цитированием