Mozilla как установить выделение определенного размера в нужную позицию в iframe
Добрый день,
собсвтенно сабж Для ИЕ var sel = iDoc.selection.createRange(); sel.moveStart("character", 2); sel.moveEnd("character", 11); sel.select(); работает норм (только в ИЕ) Опера sel = ifrWnd.getSelection(); range2 = sel.getRangeAt(0); var range = iDoc.createRange(); range.setStart(sel.anchorNode, 2); range.setEnd(sel.anchorNode, 6); sel.removeRange(range2); sel.addRange(range); работает странно: если в диапазон 2 - 6 входит чистый текст - все окей, если залез хотя бы один символ от допустим ссылки - выделение не накладывается Под FireFox и Гугл так и не допер как - оба верхних способа не рабоатют ни в каком виде. Помогите сотворить кроссбраузерную функцию (точнее помочь победить вышеозначенных противников - функцию то я сам конечно смогу создать) :) спасибо! |
Этот вопрос намного интересней предыдущего. Я бы тоже хотел знать на него ответ, реально три дня сидел экспериментировал, потом заглянул сюда и вижу, что не один я такой. )))
FF, Opera & Chrom легко выделяют текст обрамленный каким либо тегом, вот код: rang.selectNodeContents(obj); selectedText.addRange(rang); А с выделением произвольного текста действительно проблема, но я ее только в FF наблюдал. Причем range.setStart и range.setEnd по моему работают не адекватно, или я никак не могу понять их логику. Если выделение нужно для ВИЗИВИГ редактора, в принципе можно обойтись выделением текста в теге, т.е. пользователь выделил текст и нажал кнопку для выделения текста жирным шрифтом, скрипт берет выделенный текст в тег <strong> (это просто пример), а затем выделяет текст в этом теге. Если есть другие варианты буду рад увидеть. |
Часовой пояс GMT +3, время: 08:25. |