Jump to content

WingedFox

Expert
  • Posts

    214
  • Joined

  • Last visited

Everything posted by WingedFox

  1. Если заранее известен макс. уровень вложенности, то можно использовать что-то вроде str.match(/<em>(.*?(<em>.*?<\/em))?.*?<\/em>/g)
  2. http://debugger.ru/demo/projects/browserex...mo/bbcodes.html Почти готовое, за 10 минут можно докрутить до нужного состояния. Делая скидку на полное незнание JS - за 2 часа.
  3. Посмотрите http://debugger.ru/projects/browserextensi...cumentselection Можете взять код работы с курсором оттуда, а можете и целиком библиотеку =)
  4. Можете начать разбираться отсюда: http://en.wikipedia.org/wiki/Purple_Numbers
  5. Смешивать CSS с JavaScript можно только в IE. Кроме того существуют т.н. "behavior" в IE и его эмулятор для мозиллы: http://dean.edwards.name/moz-behaviors/ А вообще, подобные задачи решаются привязкой к событию resize и правкой нужных координат.
  6. Возможно имеется в виду что-то вроде http://debugger.ru/projects/browserextensi...cumentselection ?
  7. Если хочется перевода на русский - велкам http://debugger.ru/articles/nativeregexp
  8. Всё уже давно написано =) http://debugger.ru/projects/browserextensi...cumentselection
  9. Мда... Без комментариев =) DocumentSelection.wrapSelection(ts,"["+el.value+"]","[/"+el.value+"]");
  10. Проще всего так: http://debugger.ru/projects/browserextensi...cumentselection Дема вставки bb-кодов: http://debugger.ru/demo/projects/browserex...mo/bbcodes.html
  11. Угу, пишут эмуляторы textarea =)
  12. Например, с помощью DOM.getOffset из https://svn.debugger.ru/repos/jslibs/Browse...ns/trunk/dom.js
  13. WingedFox

    split

    А, ну да. Только для .split сделано исключение. Тем не менее, заметная разница в скорости появляется только на очень большом числе итераций (10..30 тысяч) и коротких строках (<300 символов). При увеличении длины строки (за исключением Сафари) рег уменьшает отставание, а в IE даже обгоняет строковый разделитель. Двукратное превосходство строкового разделителя есть только в том же Сафари. В IE разница не более 10%. В FF2 - около 25%. Оперу не тестировал var str = "a b c d e f g h i j k l m n o p q r s t v u w x y z " var max = 5000; var d1 = (new Date).valueOf() for (var i=0; i<max; i++) { var res = str.split(" "); } var d2 = (new Date).valueOf() var reg = /\s/ for (var i=0; i<max; i++) { var res = str.split(reg); } var d3 = (new Date).valueOf() document.writeln("split(\" \") == "+(d2-d1)+"ms") document.writeln("<br />") document.writeln("split("+reg+") == "+(d3-d2)+"ms")
  14. WingedFox

    split

    s0rr0w Спешу огорчить - split использует ровно тот же движок регулярных выражений. Даже если туда передаётся строчка.
  15. WingedFox

    split

    Более общее решение: http://forum.dklab.ru/viewtopic.php?t=14378
  16. А нужно именно на ВАП перекидывать? Если нет, то достаточно использовать правильный CSS. Ну и, в конце-концов, повесьте ссылку "мелкий сайт" чтобы пользователь мог вручную перейти куда надо.
  17. Можно подробнее? При 15000 глобальных переменных у меня тесты показывали разницу меньше доступной для измерения (т.е. 0ms). Вопрос был только в скорости загрузки подготовленного файла или времени генерации этих самых переменных.
  18. Я недавно игрался с этим, современные браузеры уже не тормозят даже при десятках тысяч глобальных переменных/функций. Таким образом, чистота глобального контекста имеет смысл в том ключе, что при увеличении числа переменных увеличивается вероятность пересечения имён и как результат - получения неприятных багов.
  19. Если очень хочется обойтись без серверной части, пользуйте http://htmlhelp.com/faq/html/forms.html#mailto-form
  20. Я привёл пример - почему. Он иллюстрирует "качество" следующего абзаца Остальное - того же уровня.
  21. Какой ужас..... Тут йад уже не поможет.... Особенно про прототипы. <script> var a = "test test test" String.prototype.capitalize = function () { return this.replace(/\b(\w)/g, function (a) { return a.toUpperCase()}); } document.write(a.capitalize()) </script> Забудьте этот опус как страшный сон.
  22. "крестик" - это window.unload
  23. Ну так никто и не заставляет. ;-) Коды открыты, осталось переписать инициализацию сервера и цепляние к нему интерфейса.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy