Senseich, прекрасно вас понимаю, использую исключительно саблайм для любой работы с текстом, ибо ничего более гибкого и мощного пока не видел. Разве что лайм. И да, действительно, вижу что многие в интернетах жалуются на эту фигню со вложенностью и объемом кода. Но даже несмотря на мою привычку использовать саблайм, код я проверяю отдельными инструментами, для HTML/XML подходят стандартные, в том числе сам браузер.
Senseich, вы не обижайтесь, это конечно не моё дело и вообще это как-то не по-джентельменски - вы же показали код исключительно в рамках возникшей проблемы - , но справедливости ради (ведь саблайм сэкономил очень много моего времени) я всё же скажу, что из присланного вами кода, из того как он форматирован и структурирован, я предельно ясно вижу, что ошибка подчеркивания соответствующих тегов данного конкретного редактора не может быть для вас проблемой при разработке, во-первых потому что их там и без того критически много, а во-вторых потому что нельзя доверять текстовому редактору в коробочной сборке проверку кода. Для этого можно использовать например grunt-html-validation. Еще раз извините.
Отвечая на ваш вопрос: нет, кроме упомянутого вами плагина нет ничего лучше, т.к. он придуман именно для решения подобных проблем.
Полагаю, что дело не во вложенности, а в том, что у вас где-то в коде ошибка или место, которое саблайм считает за ошибку. В любом случае, лучше дайте код.
Валерий В., ну, к сожалению других вариантов нет, т.к. для клиентского JS доступ к ФС ограничен by design. У огнелиса есть группа фич *FileSystem, но они все имеют дело с файловой песочницой, доступа к
локальной ФС у них нет.
Обработчики лучше вешать с помощью addEventListener.
По теме: процедура event асинхронная, поэтому просто вызвать сначала ga, а потом newDoc не получится. Вам придётся передать newDoc как колбэк в ga, чтобы newDoc выполнился после завершения процедуры event.
Леонид, это поведение регулируется с помощью easing function. В моей версии для easing приняты некоторые условности: start_value считается равным нулю и total_time - единице, а полная форма используемой функции выглядит так:
function(current_time, start_value, change, total_time) {
var ts=(current_time/=total_time)*current_time;
var tc=ts*current_time;
return start_value+change*(-1.55*tc*ts + 7.5*ts*ts + -12.3*tc + 7.3*ts + 0.05*current_time);
}
Т.к. мой код использует сокращенную версию, то придётся изменить код чтобы использовалась полная версия, как-то так. Смысл в том, что вы теперь можете сами сделать easing function, и скопировать её вместо существующей. Набросать функцию можно здесь: выбираете нужную в списке easing presets или двигаете желтые квадратики снизу, попутно тестируя анимацию с помощью красного шарика (первый клик для фокуса шарика, второй - для выбора конечного пункта траектории).
Амир Абдуллин, все гораздо проще, без дополнительных файлов: при загрузке страницы собираете свой StyleSheet, после чего по клику на нужные кнопки просто пересобираете, или даже точечно меняете значения.