Jump to content

Riim

User
  • Posts

    79
  • Joined

  • Last visited

Everything posted by Riim

  1. подсказали на другом форуме: http://jsfiddle.net/byd3c/ спасибо за внимание
  2. Привет. Почти как обычно: выровнять блок вертикально по центру родителя, высота блока зависит от контента, родитель должен реагировть на переполнение по Y (переполняет выравниваемый блок) увеличением высоты или появлением скролла. Можно использовать продвинутый (-webkit) css. Проблема в том, что блок содержит детей с overflow:hidden; + white-space:nowrap; + text-overflow:ellipsis; из-за чего стандартные способы ломаются: 1. display:table-cell; + vertical-align:middle; http://jsfiddle.net/7Ewfx/7/ не срабатывает overflow:hidden; . 2. display:flex; + align-items:center; http://jsfiddle.net/7Ewfx/8/ не срабатывает text-overflow:ellipsis; и блок с текстом смещается влево. 3. display:box; + box-align:center; http://jsfiddle.net/7Ewfx/9/ не срабатывает text-overflow:ellipsis; и display:box; вроде как устарел. Должно получиться вот так: http://jsfiddle.net/7Ewfx/10/ , но чтобы зеленый блок был в центре. Кто-нибудь знает как это сделать?
  3. Моя очередная поделка: http://realcode.ru/regexptester/ . Прошу критики.
  4. /[u|Z|E|R]/.test('|');// true [u|Z|E|R] => [uZER] || (?:U|Z|E|R)
  5. return false в обработчике клика.
  6. Riim

    Уровень

    так уж получилось, что я не давал ни какого кода.
  7. Riim

    Уровень

    что-то я не вижу в ТС, что необходим именно алгоритм, написано: т. е. в первую очередь требуется именно способ. я прекрасно знаю, как обойтись без toFixed, а так же знаю, что в большинстве браузеров без toFixed работать будет быстрее, но там где от меня не требуют производительности, я не буду изобретать велосипеды.
  8. Riim

    Уровень

    Number#toFixed и Number#toPrecision уже не в моде?
  9. alert('qwqwqwqw[abc]zxzxzxzx'.replace(/^.*?(?=abc)/, ''));
  10. В perl-овских регулярках есть рекурсия, там бы эта задача решалась одной строкой, а здесь только так: var str = '{0[<em> </em>]0}{1[<em>{2[<em> </em>]2}</em>]1}{3[<em>{4[<em> </em>]4}{5[<em> </em>]5}</em>]3}{6[<em>{7[<em>{8[<em> </em>]8}{9[<em> </em>]9}</em>]7}{10[<em> </em>]10}</em>]6}'; var result = [], i = 0, j = 0, t1 = '<em>', t2 = '</em>', r1 = /<em>/g, r2 = /<\/em>/g, l1 = t1.length, l2 = t2.length; while ((i = l1 + str.indexOf(t1, j)) >= l1) { while (true) { var s = str.slice(i, j = str.indexOf(t2, j)); j += l2; if ((s.match(r1) || []).length == (s.match(r2) || []).length) { result.push(s); break; } } } alert(result.join('\r\n—————-\r\n').replace(/\u0020/g, '_'));
  11. под "выделить" я понял именно "раскрасить". если бы вы не меняли условия, написанные в ТС, на ходу, то было бы как раз "то" - внутренний <em> раскрашиваться не будет. Может лучше сначала в DOM этот текст добавить? Так сделать проще будет.
  12. var str = 'string <em>substring<em>substring</em>substring</em> xxx substring xxx <em>substring</em> xxx <em>substring</em>'; str = str.replace(/<em>([\s\S]*?<\/em>)/gi, '<em style="color: #f99;">$1'); alert(str);
  13. Да вроде все так изучают, ну то есть сначала конечно книгу надо почитать, а потом уже примеры кода смотреть, разница лишь в том кто, сколько книгу читает. У меня редко хватает терпения прочитать дальше предисловия.
  14. Я представляю, как бы все висло. А уж про количество ошибок лучше даже не думать, windows отдыхал бы. Linux в основном написан на си (без плюсов). я не путаю, различия мне понятны, просто хотел узнать как вы их видите. вы, наверное, подумали, что я пытаюсь пропагандировать использование фреймворков, но это не так, я просто совсем не согласен с формулировкой "абсолютное зло". Пользы действительно намного больше, чем просто отупение "конкурентов". Например, фреймворки - это хорошие примеры хорошего (иногда не очень) javascript-а. Javascript я изучал в основном читая PrototypeJs (не у всех получается учиться по книгам), и непонятные мне конструкции вбивал в гугл. Что еще, при таком способе обучения, можно читать кроме фреймворков? Может вот это г**но: http://woweb.ru/load/100 ? Сейчас я свободно ориентируюсь в коде PrototypeJs, многие его части наизусть уже запомнил и самое забавное, что я ни разу его нигде не использовал, наверное, даже к странице ни разу не подключал. Я не "за" и не "против" фреймворков, я против их бездумного использования. Говоря фразу: я имел в виду не подключить к странице фреймворк ради простейшего tooltip-а, а открыть код этого фреймворка, найти реализации нужных методов и, изменив под себя, использовать в своих проектах.
  15. Я не знаю, насколько мое сравнение получилось удачным, поскольку ни на одном из перечисленных языков ни разу не писал, я просто хотел показать, что javascript это тоже не более чем очередной уровень абстракции, а учитывая количество различий в реализациях, вообще самопал. си-программист вам на это ответит что-то вроде: "в яве нельзя напрямую работать с памятью, а значит, ОС не написать", так же как вы ответили про фреймворки: в чем, по-вашему, принципиальное отличие между фреймворком, написанным на языке X, и новым языком более высокого уровня, чем язык X, написанном на языке X?
  16. исходя из этого, я могу согласиться с формулировкой "Фреймворки - относительное зло!", но про "абсолютное" я не согласен. я вижу больше плюсов. А вообще, люди начинавшие на более низком уровне абстракции всегда ворчат на тех кто сразу хватается за самый, на данный момент, высокий уровень, но сами спускаться ниже того с чего они начинали почему-то не спешат. Человек, пишущий на си, не очень жалует яву, но и сам на ассемблере не очень хочет писать. С js-фреймворками та же ситуация.
  17. это не готовое решение, а код, объясняющий как сделать то, что вам необходимо. почему?
  18. var elem = Tooltip.elem, style = elem.style, scroll = $d.getScroll(), viewportDimensions = $d.viewport.getDimensions(); elem.innerHTML = initElem.tooltipText; var width = elem.offsetWidth + (parseFloat(elem.getStyle('marginLeft'), 10) || 0) + (parseFloat(elem.getStyle('marginRight'), 10) || 0), height = elem.offsetHeight + (parseFloat(elem.getStyle('marginTop'), 10) || 0) + (parseFloat(elem.getStyle('marginBottom'), 10) || 0); style.left = (lastE.pageX + width > scroll.x + viewportDimensions.x ? lastE.pageX - width : lastE.pageX) + 'px'; style.top = (lastE.pageY + height > scroll.y + viewportDimensions.y ? lastE.pageY - height : lastE.pageY) + 'px'; Реализации getScroll, viewport.getDimensions и getStyle есть в любом js-фреймворке.
  19. при сравнении обычного текста это будет действительно удобно, но не факт, что при сравнении кода, программист будет рад такому вмешательству в свой код. Сделал еще одну опцию: "добавлять перевод строки при необходимости", т. е. можно переключаться.
  20. rus, если одну длинную строку добавить в textarea, то визуально добавятся переносы, но фактически их нет. Сравнение построчное (не посимвольное), и здесь получаются две разные строки, вот все и выделяется.
  21. Vitaly, Searcher, спасибо за отзывы. Сейчас должно получше быть. rus, можно этот текст? И какой у тебя браузер?
  22. Как ни странно, но большинство современных IDE не умеют даже простейшего, а именно построчно сравнить два текста. Приходится либо искать какие-то плагины, либо держать на компе еще одну программу, в крайнем случае, можно в выводе консоли разбираться, что, на мой взгляд, верный способ сойти с ума. Решил реализовать этот функционал в виде online-сервиса. Может кому-то пригодится: http://realcode.ru/diff/ Делал как web 2.0 приложение. Прошу оценить (дизайн, верстка, юзабельность). //—————- И еще вопрос: для легенды используется такая конструкция: <dl id="legend"> <dt class="changed"></dt><dd>измененный текст</dd> <dt class="deleted"></dt><dd>удаленный текст</dd> <dt class="inserted"></dt><dd>добавленный текст</dd> </dl> насколько она здесь верна с точки зрения семантики, и как сделать правильней? Беспокоит то, что dt должен содержать термин, т. е. текст. Может туда пустые span-ы добавить?
  23. Если учитывать все эти "вдруг", то определение одного браузера можно будет расписать на сотню строк кода, и оно по-прежнему не будет надежным.
  24. Можно было бесплатно скачать: раз , два Еще где-то на хабре выкладывали.
  25. Чем отличается скейт от башенного крана?
×
×
  • 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