Почему execCommand('createLink') не работает в Firefox?

Добрый день! прошу помощи.

Когда я выделяю текст, над ним появляется тулбар с кнопкой "create link", по клику на эту кнопку появляется input и курсор сразу фокусируется на этом инпуте, ввожу ссылку, нажимаю enter, и в firefox ничего не происходит ( ссылка не создается ), в chrome и safari все работает отлично, в чем может быть причина?

создаю ивенты:

events:{
    'click .link':              'toggleLink',
    'keypress [name="link"]':   'setUrl'
},


сами функции ивентов:

toggleLink: function(e){
        if(this.options.nodes.url){
            this.$el.find('[name="link"]').val(this.options.nodes.url);
        }

        this.lastRange = window.getSelection().getRangeAt(0);
        this.$el.find('[name="link"]').focus();
    },

 setUrl: function(e){
        if(e.which == 13){
            e.preventDefault();
            this.$el.find('[name="link"]').blur();
            window.getSelection().addRange(this.lastRange);
            var url = $(e.currentTarget).val();
            if(url.length > 0){
                document.execCommand('createLink', false, url);
            }else{
                document.execCommand('unlink', false, null);
            }               
        }
    }

что я делаю не так и почему firefox не хочет понимать что я ввел ссылку? спасибо!
  • Вопрос задан
  • 2671 просмотр
Пригласить эксперта
Ответы на вопрос 1
k12th
@k12th
console.log(`You're pulling my leg, right?`);
А в чем именно проблема -- не запускается обработчик (метод setUrl) или уже в нем происходит что-то не то?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы