Я предполагаю, что вы делаете это для развлечения / практики.Если вы делаете это по профессиональным причинам, я настоятельно рекомендую вам не изобретать велосипед и использовать что-то вроде Ckeditor , tinyMCE или YUI .
Это, как говорится;вам нужно изучить обработку событий .В частности, на ваш вопрос о фокусировке вы можете посмотреть здесь .То, как вы описываете (установка переменной в значение true / false), похоже, что она просто столкнется с проблемами.Если вы используете стандартный атрибут событий (в отличие от установки переменной «focus» onclick), вы должны определить функции для выполнения, а затем установить их как атрибут onfocus / onblur для элементавы слушаете.
То есть, если вы не используете библиотеку javacript, такую как mootools, jquery, extJS и т. д. Если вы используете одну из них, они, вероятно, имеют свой собственный способ обработки событий,поэтому вам следует поискать в соответствующей документации, как реализовать обработчики событий.
Еще одна заметка;Вы действительно должны использовать текстовую область над div (если я не понимаю, и вы просто хотите что-то сделать, когда пользователь фокусируется на вашем div).Если вы используете JavaScript только для того, чтобы полностью изобрести текстовый редактор из div;тогда ваша веб-страница не будет работать без JavaScript.Если вы сохраните текстовую область;пользователи по-прежнему могут вводить информацию, и вы по-прежнему получаете выгоду от захвата текстового содержимого для отправки формы, но использование divs означает, что ваша веб-страница будет просто бесполезной без javascript.