Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 10.05.2016, 21:01
Аватар для Nikel097
Интересующийся
Отправить личное сообщение для Nikel097 Посмотреть профиль Найти все сообщения от Nikel097
 
Регистрация: 06.01.2014
Сообщений: 22

событие onBeforePaste не работает
Доброго времени суток!
Суть задачи следующая: есть блок div с contenteditable='true'. Если пользователь будет вставлять в него информацию из буфера, то я хочу ее заранее очистить от всех html-тегов и в итоге вставить только текст.
Хотел реализовать это с помощью события onBeforePaste, но оно почему-то совсем отказывается срабатывать, вот элементарный пример: https://jsfiddle.net/nhxj28xf/ Chrome, Yandex, Safari и Лиса никак не отреагировали на вставку, а вот в Explorer на удивление все сработало.
Возможно что-то нужно сделать дополнительно чтобы скрипт был рабочим?! Может есть какой-нибудь удобный способ для реализации этой задачи?!
Заранее благодарю!)
Ответить с цитированием
  #2 (permalink)  
Старый 10.05.2016, 21:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,127

Nikel097,
для остальных можно попробовать oninput
Ответить с цитированием
  #3 (permalink)  
Старый 11.05.2016, 09:45
Аватар для Nikel097
Интересующийся
Отправить личное сообщение для Nikel097 Посмотреть профиль Найти все сообщения от Nikel097
 
Регистрация: 06.01.2014
Сообщений: 22

onInput наподобии onChange срабатывает при каждом изменении и вводе. Есть еще onPaste, но он срабатывает уже после вставки, к тому же он тоже кроссбраузерный.

Можно ли как-нибудь контролировать именно вставку из буфера еще?! либо как-то менее затратно, не при каждом измнении, иначе могут быть страшные подлагивания при больших объемах информации, так как этот <div contenteditable="true"></div> используется вместо input для ввода информации на форуме.
Ответить с цитированием
  #4 (permalink)  
Старый 11.05.2016, 10:16
Аватар для ruslan_mart
Профессор
Отправить личное сообщение для ruslan_mart Посмотреть профиль Найти все сообщения от ruslan_mart
 
Регистрация: 30.04.2012
Сообщений: 3,018

Nikel097, через oninput всё нужно делать, в нём уже отслеживаем какие изменения произошли, если содержимое изменилось не на один символ, то очевидно, что произошла вставка с буфера.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не работает событие. farand_777 jQuery 5 15.11.2013 02:24
Ajax при заходе на страницу из поисковика - не работает Алексей_ГР Ваши сайты и скрипты 2 03.09.2013 00:03
Помогите не работает событие motoroller jQuery 2 01.04.2011 23:38
Doctype и javascript: не работает событие в Internet exproler nastya Internet Explorer 0 23.03.2011 12:26
ява-скрипт выборочно работает-не работает zeta777 Internet Explorer 0 20.01.2010 11:41