Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> firefox и paste в iframe, получить измененный текст после вставки 
V
    Опции темы
Frozen_Coyote
Дата 21.2.2011, 23:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Здравствуйте,

такой нюанс:

Код


var iframe = document.getElementById(iframe_id);
var iframeDocument = iframe.contentDocument || iframe.contentWindow;

iframeDocument.addEventListener('paste', function(e)
{
alert(document.getElementById(iframe_id).contentDocument.getElementsByTagName("body")[0].innerHTML);
return false;
},true );




Даный код делает следующее: я нажимаю ctrl + v -> алерт отображает текущий контент iframe -> вставляется мой текст из буфера

что мне нужно: мне нужно получить (ну пусть в алерт, не суть) текст из iframe, который получился ПОСЛЕ появления моей вставки. Иными словами - нажимаю ctrl + v -> вставляется текст -> появляется алерт с обновленным  контентом iframe. Ну какой то типа afterpaste что ли - помогите плиз

спасибо!

PM MAIL   Вверх
Amphiluke
Дата 22.2.2011, 19:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 35
Всего: 112



Поставьте в обработчике небольшой таймаут на выполнение операции считывания содержимого фрейма.
Код

iframeDocument.addEventListener('paste', function(e) {
    setTimeout(function() { alert(iframeDocument.getElementsByTagName("body")[0].innerHTML) }, 10);
}, true);

PM   Вверх
Frozen_Coyote
Дата 22.2.2011, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Спасибо за ответ, задержка - это некрасиво smile по другому сделал. в любом случае - благодарю
PM MAIL   Вверх
Amphiluke
Дата 22.2.2011, 20:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 35
Всего: 112



Цитата(Frozen_Coyote @  22.2.2011,  23:35 Найти цитируемый пост)
по другому сделал

Напишите, плиз, как.
PM   Вверх
Frozen_Coyote
Дата 23.2.2011, 09:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Цитата(Amphiluke @  22.2.2011,  20:41 Найти цитируемый пост)
Напишите, плиз, как. 


Я не стал перехватывать событие "Paste" - я стал перехватывать keyup.  И лис спокойно дожидается изменения контента в iframe а по отпусканию клавиши реагирует

Код

iframeDocument.addEventListener('keyup', function(e)
{
var cc = (e.which) ? e.which : event.keyCode;
if(e.ctrlKey && e.keyCode == "86")
{
fnPaste(e, iframe_id);
}
},true );



PM MAIL   Вверх
Amphiluke
Дата 23.2.2011, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


   ☽
***


Профиль
Группа: Завсегдатай
Сообщений: 1253
Регистрация: 26.8.2009

Репутация: 35
Всего: 112



К сожалению, это не сработает при вставке через контекстное меню. smile
PM   Вверх
Frozen_Coyote
Дата 23.2.2011, 10:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 230
Регистрация: 20.9.2007

Репутация: нет
Всего: нет



Цитата(Amphiluke @  23.2.2011,  09:43 Найти цитируемый пост)
 сожалению, это не сработает при вставке через контекстное меню.


ну понятное дело, слушальщик то пасет нажатие клавиши. Я знаю есть событие на появление контекстного меню, потом покопаю в ту сторону - мне то нужно было именно для клавиш
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Форум для вопросов, которые имеются в справочниках, но их поиск вызвал затруднения, или для разработчика требуется совет или просьба отыскать ошибку. Напоминаем: 1) чётко формулируйте вопрос, 2) приведите пример того, что уже сделано, 3) укажите явно, нужен работающий пример или подсказка о том, где найти информацию.
 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0745 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.