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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Событие onbeforepast в висивиге, Как повесить событие onbeforepast 
:(
    Опции темы
mcfly82
Дата 23.9.2009, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Доброе время суток.
Подскажите пожалуйста как указать обработчик события onbeforepast (или хотя бы на onpast или минимум на onkeydown), на вставку текста в поле висивига.
Вот ссылка на страничку с висивигом: http://sitezona.net/edtr.html

Вот код этой странички:
Код

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>

<BODY onload="NewTextArea.init('frm');">

<script>

Код

var NewTextArea={
  frame:{},
  document:{},
  window:{},
  init:function(frame){
    NewTextArea.frame=frames[frame]?frames[frame]:document.getElementById(frame);//IE, Opera - frames.document, другие - ById.document

    if (!NewTextArea.frame){
      //alert("Ошибка ID");
      return -1;
    }

    //1) получить указатель
    NewTextArea.document=NewTextArea.frame.contentDocument || NewTextArea.frame.document || NewTextArea.frame.contentWindow.document;
    if (!NewTextArea.document){
      //alert("Ошибка iframe");
      return -2;
    }

    NewTextArea.window=NewTextArea.frame.contentWindow || NewTextArea.frame.window;
    if (!NewTextArea.window){
      //alert("window");
      return -2;
    }

    //2) Оформить iframe HTML документ
    var HTML = "<html><head>";
    HTML += "</head><body>";
    HTML += "</body></html>"

    NewTextArea.document.open();
    NewTextArea.document.write(HTML);
    NewTextArea.document.close();

    //3) Установить designMode
    if (NewTextArea.document.designMode){
      NewTextArea.document.designMode='on';
    }else{
      alert("Ошибка designMode");
      return -3;
    }
  }
}

function beforePast()
{
  alert('Вставка текста в поле редактора');
}

Код

</script>


Поле редактора:<br>
<iframe id='frm' style='width:100%;height:500px'></iframe><br>

<br>
Как сделать, чтобы на событие onbeforepast выполнялась функция, например <a href="#" onclick="beforePast();return false;">beforePast()</a>

</BODY>
</HTML>



Заранее благодарен smile

Это сообщение отредактировал(а) mcfly82 - 23.9.2009, 10:47
PM MAIL   Вверх
youri
Дата 23.9.2009, 16:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


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

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



невозможно назначить обработчик события onbeforepast, так же как и обработчик события onafterfuture, так как эти события лежат за пределеами пространственно-временного континнума smile
PM   Вверх
mcfly82
Дата 24.9.2009, 23:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



Цитата(youri @ 23.9.2009,  16:50)
невозможно назначить обработчик события onbeforepast, так же как и обработчик события onafterfuture, так как эти события лежат за пределеами пространственно-временного континнума smile

Тогда просто событие past

Я поковырялся и нашел для хрома, сафари и фф:

Код

//Chrome, Safary
if(NewTextArea.frame.window.document.body.addEventListener)
  NewTextArea.frame.window.document.body.addEventListener('paste', edtPaste, true);
//FF
else if(NewTextArea.frame.contentWindow.document.addEventListener)
  NewTextArea.frame.contentWindow.document.addEventListener("paste", edtPaste, true);


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


 




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


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

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