О web-разработке
и даже немного больше...

Определяем событие копирования, вырезки, вставки текста в JQuery

Практически на каждом сайте есть текст, который привычным образом может быть скопирован, вырезан (в случае с формами), и вставлен. Для некоторых задач иногда требуется отследить данное действие пользователя. Рассмотрим простой пример, как можно это дело реализовать.
Для этой задачи мы будем использовать JQuery, на самом деле тут нет сложностей, т.к. нам достаточно привязать обработчик события к действиям пользователя.
Предположим у нас есть простая html-форма, одним текстовым полем, присвоим id=textInp:

<form action="#">
	<label>Пробуйте скопировать, вырезать, вставить текст:</label>
	<input id="textInp" type="text" value="Тут самый обычный текст" />
</form>

Так же нам потребуется блок, в котором мы будем показывать сообщение о действии пользователя с текстом в поле. В моем примере он находиться после формы.

<div id="msg"></div>

Теперь самое основное, вешаем обработчик события на данное поле формы:

$(document).ready(function(){
	$("#textInp").bind({
		copy : function(){
			$('#msg').text('Вы скопировали текст!');
		},
		paste : function(){
			$('#msg').text('Вы вставили текст!');
		},
		cut : function(){
			$('#msg').text('Вы вырезали текст!');
		}
	});
});

Таким образом, при попытке скопировать будет вызываться событие copy, вставить – paste, вырезать – cut по аналогии. Там же мы и отправляем на вывод сообщение о действии.
Живой пример.
На этом всё, успехов в труде!

Опубликован: 01.02.2015 г.

См. также:

Загрузка файлов на сервер посредством Ajax
Отложенная загрузка изображений Lazy Load
Анимация набора текста на Typed.js
Анимация отсчёта на jquery-spincrement
Mega Dropdown — Меню для мобильной версии
Отслеживаем клик вне элемента на JQuery
Ajax-загрузка записей при скроллинге и нажатии кнопки
Stimed – задаем CSS-стили по времени

Комментарии

  1. Сергей пишет:

    Отлично, спасибо. Воспользовался кодом, чтобы отслеживать копирование e-mail на сайте в метрику.

  2. Евгений пишет:

    Спасибо, Дружище!

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Комментарии
  • Загрузка...
Друзья сайта