Мне бы хотелось, чтобы функция вызывалась, когда редактор ACE заканчивает разбор нового исходного кода, чтобы, например, добавить слушателя событий щелчка на каждый последующий узел DOM .ace_identifier
. До сих пор я не смог найти правильное событие ACE использовать для этого и просто следующий код ничего не делает:ACE Editor «end of parsing» event
editor = ace.edit $('#editor')
editor.setReadOnly true
// editor change event - never triggered in this case
editor.getSession().on 'change', (e) ->
console.log e
// changing the language makes ACE parse the source code and generates
// a new DOM...
editor.getSession().setMode "ace/mode/javascript"
// ... but a this point, $('.ace_identifier') returns a empty array
// instead of the expected list of ace_identifiers created
console.log $('.ace_identifier')
С 'afterRender' событием, я действительно в состоянии выбрать' .ace_identifier' Домс но установка обработчика событий нажми на него не работает. –
Ну вы можете добавить указатель-события: авто стиль к нему. Но поскольку я сказал, что добавление обработчиков событий к каждому узлу является крайне плохой идеей, вы должны использовать editor.on (вместо этого «click» listener и 'session.getToken'. –
Как вы узнали об этом« указателе-событиях », Я потратил так много энергии и времени именно из-за этого! Я буду использовать оптимизированный путь позже. Это для прототипирования до сих пор. –