Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > JavaScript: Общие вопросы > Opera execCommand unlink


Автор: Frozen_Coyote 31.5.2011, 14:47
Добрый день 

Обновил оперу до 11 версии - заметил проблему: перестал работать метод document.ExecCommand("Unlink", falste, null), при этом если делаешь его с текстовой ссылки - все ок, а вот с картинки - ссылка не снимается. Это какой то у меня локальный баг, или реально косяк оперы? Есть ли способ как то обойти его?

с уважением




Автор: нуп 31.5.2011, 15:06
Может это опечатка?

document.ExecCommand("Unlink", falste, null),

Автор: Frozen_Coyote 31.5.2011, 15:26
Да, само собой, это я тут набирал - нечаянно опечатался. В коде конечно же все правильно написано

Автор: Amphiluke 31.5.2011, 20:57
Frozen_Coyote, мы с вами, помнится, http://forum.vingrad.ru/index.php?showtopic=325283&view=findpost&p=2317851, как можно помещать картинки в выделение.  smile 
Тут как раз тот случай, когда нужно, чтобы всё содержимое ссылки (картинка в данном случае) находилась в выделении, чтобы можно было осуществить команду Unlink.
Если у вас проблема наблюдается только в Opera, вот вам примерное решения для Opera.
Код

    function removeHLink() {
        var sel = iframe.getSelection();
        var rng = sel.getRangeAt(0);
        if (rng.commonAncestorContainer.nodeName.toLowerCase() == "a") {
            sel.collapse(rng.commonAncestorContainer, 1);
            sel.extend(rng.commonAncestorContainer, 0);
        }
        iframe.document.execCommand('Unlink');
        sel.collapseToStart();
    }


Добавлено через 2 минуты и 10 секунд
iframe — это, естественно, ваш WYSIWYG-редактор.

Автор: Frozen_Coyote 1.6.2011, 10:55
Да, но в прошлой 10 версии все работало на "ура" - именно после смены на 11 появился косячок этот - вот что меня опечалило ((

Огромное спасибо за решение )

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)