Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Отменить последнее действие.
 
 автор: Николай2357   (01.07.2008 в 23:51)   письмо автору
 
 

Можно еще вопросик?
Как можно реализовать на странице кнопку "отменить последнее действие", по типу Ctrl+z?
Подскажите, в какую сторону хоть копать, не знаю с чего подступиться.
Спасибо.

   
 
 автор: bronenos   (02.07.2008 в 10:43)   письмо автору
 
   для: Николай2357   (01.07.2008 в 23:51)
 

Это смотря какое действие :)

   
 
 автор: Николай2357   (02.07.2008 в 12:20)   письмо автору
 
   для: bronenos   (02.07.2008 в 10:43)
 

Последнее. Ctrl+z. :(:(:(

   
 
 автор: bronenos   (02.07.2008 в 13:58)   письмо автору
 
   для: Николай2357   (02.07.2008 в 12:20)
 

Вы совершенно туманно описываете проблему, ничего сказать не могу

   
 
 автор: Николай2357   (02.07.2008 в 15:16)   письмо автору
 
   для: bronenos   (02.07.2008 в 13:58)
 

Ну вот, допустим, юзер написал в <textarea> чего нибудь не то. Если нажать Сtrl+z, все возвращается на шаг назад. А можно такую кнопку сделать, или это очень сложно? Я пока непойму, с чего начать то можно. По логике нужно запоминать каждое последнее действие , потом как то его реверсировать. Сложно пока это для меня, я обычно проблемы решаю по мере их поступления, а тут не знаю с чего начать. На основе чего можно это сделать, буфер както использовать или еще что-то есть?
PS. Меня пока только <textarea> интересует.

   
 
 автор: GeorgeIV   (02.07.2008 в 15:19)   письмо автору
 
   для: Николай2357   (02.07.2008 в 15:16)
 

ну это уже конкретнее, повесь на кнопку обработчик, который будет убирать последний символ содержимого текстареа . для частного случая ничего сложного нет

   
 
 автор: Николай2357   (02.07.2008 в 15:49)   письмо автору
 
   для: GeorgeIV   (02.07.2008 в 15:19)
 

А если не символ, а набор, как то по пробелам делить надо наверное, или еще что нибудь привязывать. Еще ведь Ctrl+y есть, тоже интересно...

   
 
 автор: GeorgeIV   (02.07.2008 в 16:17)   письмо автору
 
   для: Николай2357   (02.07.2008 в 15:49)
 

так вам и карты в руки, как хотите, так и реализуйте! начните сначала с буковки последней, а там и все остальное, надеюсь, яснее станет

   
 
 автор: Николай2357   (02.07.2008 в 17:11)   письмо автору
 
   для: GeorgeIV   (02.07.2008 в 16:17)
 

Спасибо, надеюсь получится.

   
 
 автор: Николай2357   (03.07.2008 в 09:35)   письмо автору
 
   для: Николай2357   (02.07.2008 в 17:11)
 

Все оказалось не так страшно:

var buf;
var tx;
var pres;
function Set(pres){
var kc=event.keyCode;
var ran = form.cont.createTextRange();
tx = ran.text;
if(butpres==1||kc==32||kc==13){
buf=ran.text;
form.cont.focus();
}
}
function Res(){alert(tx)
var txtx=buf;
if(txtx==null){
txtx=tx;
}
form.cont.value=txtx;
form.cont.focus();
}
</script> 
</head> 
<body onkeypress="Set(0);" > 


<form name="form" action="#">
<textarea id="cont" onfocus="Set(1)" cols="90" rows="20"></textarea>
<input  type="button" onclick="Set(1)" value="Ввод текста">
<input  type="button"  onclick="Res()" value="Отмена"></form>

только у меня как всегда одна прблема. Эта задница (прошу прощения) не хочет работать в Опере. Может знает ктонибудь, в чем секрет?
Спасибо.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования