smash_TeAm Опубликовано 23 Декабря 2007 Жалоба Поделиться Опубликовано 23 Декабря 2007 кстати да, я тут подумал как бы на аякс ее подвеситьтоже думал над этим... но тут только добавлением бб-кода как это сделано у меня не обойтись... Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Sannis Опубликовано 23 Декабря 2007 Жалоба Поделиться Опубликовано 23 Декабря 2007 Нужно вешать всю подпись целиком на аякс, либо как xRay говорит делать, например выводить подпись яваскриптом, тогда не надо будет несколько раз её в коде упоминать (: Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 28 Января 2008 Автор Жалоба Поделиться Опубликовано 28 Января 2008 Напишите готовый код спойлера, такой как на торрентсах. Заранее спасибо.А то из всей этой темы ничего не понятно.ОК, напишу для IPB 1.3 + mJournal 1.05Посмотреть в действии можно здесь: http://vesvalo.net/journal.php?user=1&comm=2620 Я решил не создавать новый ББ-код, а переделать под свои нужды кнопку вставки звука, все равно вставка звука у меня запрещена и в парсере отключено. 1. Перерисовал кнопку звука: http://vesvalo.net/html/UBBC/sound.gif 2. ubbc.jsНайти дважды:$txt = preg_replace( "#\[more\](.+?)\[/more\]#is", "<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>Свернутый текст</u></b></div></div><div class='sp-body'><div class='sp-content'>\\1</div></div></div><!--spoilerstend-->", $txt ); $txt = preg_replace( "#\[more=(.*?)\](.*?)\[\/more\]#is", "<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>\\1</u></b></div></div><div class='sp-body'><div class='sp-content'>\\2</div></div></div><!--spoilerstend-->", $txt ); $txt = preg_replace( "#\[more\](.+?)\[/more\]#is", "<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>Свернутый текст</u></b></div></div><div class='sp-body'><div class='sp-content'>\\1</div></div></div><!--spoilerstend-->", $txt ); $txt = preg_replace( "#\[more=(.*?)\](.*?)\[\/more\]#is", "<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>\\1</u></b></div></div><div class='sp-body'><div class='sp-content'>\\2</div></div></div><!--spoilerstend-->", $txt ); А после кода:$txt = preg_replace( "#(<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>Свернутый текст</u></b></div></div><div class='sp-body'><div class='sp-content'>)(.+?)(</div></div></div><!--spoilerstend-->)#is", "\[more\]\\2\[\/more]", $txt ); $txt = preg_replace( "#(<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>)(.+?)(</u></b></div></div><div class='sp-body'><div class='sp-content'>)(.+?)(</div></div></div><!--spoilerstend-->)#is", "\[more=\\2\]\\4\[/more\]", $txt ); $txt = preg_replace( "#(<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>Свернутый текст</u></b></div></div><div class='sp-body'><div class='sp-content'>)(.+?)(</div></div></div><!--spoilerstend-->)#is", "\[more\]\\2\[\/more]", $txt ); $txt = preg_replace( "#(<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>)(.+?)(</u></b></div></div><div class='sp-body'><div class='sp-content'>)(.+?)(</div></div></div><!--spoilerstend-->)#is", "\[more=\\2\]\\4\[/more\]", $txt ); 5.В стили через админку добавил описания классов:.sp-body { display: none; font-weight: normal; background: #F5F5F5; border-top-width: 0; } .clickable { cursor: pointer; } .sp-content{border: 1px solid Gray; margin-left: 10px;} .folded { display: block; background: transparent url(style_images/<#IMG_DIR#>/plus.gif) no-repeat left center; padding-left: 14px; } .unfolded { display: block; background: transparent url(style_images/<#IMG_DIR#>/minus.gif) no-repeat left center; padding-left: 14px; } 6. И файл skin_jinfo.php (для журналов):После кода:<script language="javascript" type="text/javascript"><!-- document.cookie="journal=1; path=/"; //--></script>Добавить:<script language="JavaScript" type="text/javascript" src="./html/quote.js"></script> <style> .sp-body { display: none; font-weight: normal; background: #F5F5F5; border-top-width: 0; } .clickable { cursor: pointer; } .sp-content{border: 1px solid Gray; margin-left: 10px;} .folded { display: block; background: transparent url(style_images/1/plus.gif) no-repeat left center; padding-left: 14px; } .unfolded { display: block; background: transparent url(style_images/1/minus.gif) no-repeat left center; padding-left: 14px; } </style> 7. Добавить в style_images/х/ изображения плюсика и минусика:http://vesvalo.net/style_images/1/plus.gif и http://vesvalo.net/style_images/1/minus.gif FatCat, а нельзя ли как-нибудь снизить лаги в IE 7? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 28 Января 2008 Жалоба Поделиться Опубликовано 28 Января 2008 FatCat, а нельзя ли как-нибудь снизить лаги в IE 7? У меня нет ИЕ7, не встает зараза на w2k.А что за лаги? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Arhar Опубликовано 28 Января 2008 Жалоба Поделиться Опубликовано 28 Января 2008 slideToggle на toggle заменилагов не будет, но раскрыватся будет мгновенно Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
DacentGS Опубликовано 29 Января 2008 Автор Жалоба Поделиться Опубликовано 29 Января 2008 А что за лаги?В IE7 прокрутка тормозит. В опере все нормально, в мозиле так себе. Хотя мне почему то кажется что что то со скриптом, т.к. на торрентс.ру у меня нормально. 2Arhar, спасибо! Вот только ставил я этот скрипт только потому что он так "крутится". А вообще он у меня даже не на форуме, на сайте. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Leben Опубликовано 16 Сентября 2009 Жалоба Поделиться Опубликовано 16 Сентября 2009 можно для 2.3.6 более подробно FAQ? к сожалению в этом сообщении, написано для IPB 1.3 пункт 2 - не вижу у себя такого файла ubbc.js и кнопки звука пункт 3 - файл quote.js тоже не нахожу, и что делать с двумя кодами приведенными? В парсере перед кодом - к сожалению тоже не понял, где это пункт 5это в > Админцентр > Список стилей > Стили > Главный стиль IPB > IP.Board Pro > Изменить таблицу стилей (CSS расширенный режим) ? в конце вставить с ковычками { } ? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
FatCat Опубликовано 8 Декабря 2010 Жалоба Поделиться Опубликовано 8 Декабря 2010 Обнаружилась нехорошая бага регулярок.Независимо от количества памяти у пхп, регулярки перестают работать если под маской (.+?) оказывается довольно длинный текст - в моем случае примерно 180 Кб текста были пределом, выше которого регулярка просто давала белый экран без сообщений об ошибках. Пока не дошли руки все ББ-коды перевести с регулярок на сабстринги, но для этого кода сделал "заплатку":if(stristr($txt,"[more")) { $old_txt = $txt; while( stristr($old_txt,"[more") and stristr($old_txt,"[/more]") and strpos($old_txt,"[more") !== false and strpos($old_txt,"[/more]") !== false and strpos($old_txt,"[more") < strpos($old_txt,"[/more]") ) { $txt = ""; $txt = substr($old_txt,0,strpos($old_txt,"[more"))."<!--spoilerstart--><div class='sp-wrap'><div class='sp-head-wrap'><div class='sp-head folded clickable'><b><u>"; $old_txt = substr($old_txt,(strpos($old_txt,"[more")+strlen("[more"))); if(substr($old_txt,0,1) == "=")$txt .= substr($old_txt,1,(strpos($old_txt,"]")-1)); else $txt .= "Свернутый текст"; $old_txt = substr($old_txt,(strpos($old_txt,"]")+1)); $txt .= "</u></b></div></div><div class='sp-body'><div class='sp-content'>"; $txt .= substr($old_txt,0,strpos($old_txt,"[/more]"))."</div></div></div><!--spoilerstend-->"; $old_txt = substr($old_txt,(strpos($old_txt,"[/more]")+strlen("[/more]"))); $txt .= $old_txt; $old_txt = $txt; } } Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.