«Unstyling» вставил текст внутри контекста div - PullRequest
1 голос
/ 29 октября 2011

У меня есть div с contexteditable, установленным в true и со специальным набором веб-шрифтов Google.Теперь, когда пользователь вставляет текст из другого источника, который имеет другой шрифт, он отображается в этом другом шрифте в моем div, как я могу изменить шрифт на шрифт по умолчанию для моего div, когда текст вставляется в *?1003 *

jQuery было бы лучше, но я не очень люблю плагины.

1 Ответ

0 голосов
/ 29 октября 2011

Обновленная ссылка: http://jsfiddle.net/Kai/vkbuq/

Он удаляет стили семейства шрифтов, включенные в пасту.Очевидно, что вы также можете явно изменить его на что-то другое, но удаление его вообще вынуждает его наследовать любой шрифт, который вы использовали в doc / div:

Vanilla JS:

var div = document.getElementById('myDiv');

div.addEventListener('keyup', function () {
    this.innerHTML = stripFont(this.innerHTML);
});

function stripFont (html) {
    var re = /(font-family:\s?[\"\'A-Z0-9\s]+);/ig;
    return html.replace(re, '');
}

jQuery:

$('#myDiv').bind('keyup', function () {
    var $this = $(this);

    $this[0].innerHTML = $this[0].innerHTML.replace(/(font-family:\s?[\"\'A-Z0-9\s]+);/ig, '');
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...