2010-12-03 2 views
3

Я создаю небольшой текстовый редактор с jQuery. Я хотел бы добавить 2 кнопки с «un-do» (ctrl z) и противоположную (ctrl y) функциональность.Функциональность UNDO в jQuery textarea

Есть ли способ использовать встроенную функциональность окон (ctrl + z, ctrl + y), чтобы получить желаемый эффект, вместо сохранения всего в стеке и реализации его с помощью jQuery? Кажется очевидным, так как ctrl + z и ctrl + y действительно работают при использовании textarea. Единственное изменение, которое мне нужно, это получить тот же эффект, если пользователь нажимает кнопку, которую я генерирую.

Gidi

ответ

0

Вы не можете запускать встроенные действия браузера с помощью Javascript. Это по соображениям безопасности - хотите ли вы, чтобы веб-сайт обращался к встроенным функциям вашего браузера?

Вам нужно будет обрабатывать все функции отмены с помощью Javascript, а не использовать функциональные возможности браузера.

1

Javascript не зависит от платформы, а это значит, что нет, вы не можете действительно зависеть от обычных функций Windows для его реализации. Это плохие новости. Хорошая новость заключается в том, что окна делают это за вас уже. Если вы хотите создать реальные кнопки, чтобы сделать то же самое, я бы сделал это сам. Имейте таймер, который активируется каждые несколько секунд, как только пользователь начинает печатать и сохраняет состояние текста. «Отменить» просто восстановит предыдущее состояние текста. Просто убедитесь, что не позволяйте стеку строить бесконечно.

Смежные вопросы