В настоящее время я использую следующий код для изменения данных, введенных в текстовой области, на HTML, введенный в элемент абзаца на моем веб-сайте.
Изменения вносятся, когда пользователь теряет фокус на элементе textarea, однако я хотел бы добавить исключения.На данный момент у меня есть код, который обернет выделенный текст в текстовой области в [b] [/ b] (тэги bb code).Однако при нажатии на ссылку, которая вызывает эту функцию, текстовое поле теряет фокус и изменяется на абзац.
Как добавить исключения в фокус?чтобы при щелчке по любому элементу с классом textEdit это считалось исключением, а код для замены текстовой области не запускался?
$("textarea").live('focusout', function (e) {
var $target = $(event.target);
if ( $target.is(".textEdit") ) {
} else {
var itemContent = $(this).val();
itemContent = htmlStrip(itemContent);
itemContent = itemContent.replace(/\n/g, "<br/>"); // New lines
//itemContent = itemContent.replace(/\s/g, " "); // Spaces
// Formatting replacements
itemContent = itemContent
.replace(/\[b\]/gi, "<b>")
.replace(/\[\/b\]/gi, "</b>")
.replace(/\[i\]/gi, "<i>")
.replace(/\[\/i\]/gi, "</i>")
.replace(/\[s\]/gi, "<s>")
.replace(/\[\/s\]/gi, "</s>")
$(this).replaceWith("<p class='notes'>"+ itemContent +"</p>");
}
});
Спасибо, как всегда, за любой совет!
Редактировать: Сб. 31 марта, 10:30 утра BST
Я также попытался:
if ($("#bold").is(":focus"))
и получить активный элемент $ (document.activeElement), который возвращает только BODYкогда вы нажимаете на что-нибудь.По-настоящему увлеченный этим, любил бы любую помощь или совет о том, как действовать!