- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
var SomeObject = {
ToggleUploadButton: function () {
/// <summary>Отобразить или спрятать кнопку загрузки</summary>
var arr = this._ImageList.getElementsByTagName("LI");
if (arr.length > 0)
$(this._UploadPanel).removeAttr("disabled");
else $(this._UploadPanel).attr("disabled", "disabled");
},
OnButtonClick: function (e) {
/// <summary>Обаботка события нажатия на кнопку "Загрузить". Проходим по всем миниатюрам из списка, читаем у каждой свойство file (добавленное при создании) и начинаем загрузку, создавая экземпляры объекта uploaderObject. По мере загрузки, обновляем показания progress bar, через обработчик onprogress, по завершении выводим информацию.</summary>
if (!this.IsUploadCompatible)
return true;
if ($(this._UploadPanel).attr('disabled') !== undefined) return false;
//...
}
}
Вот таким красивым способом проверяем на наличие файлов в контейнере для загрузки...
А то мало-ли, что может произойти в таком говорящем за себя событии как "OnButtonClick" >:)
Код для клиента на .NET'е, а там - Sandcastle в помощь.
Хотя.. А что, Моно так не умеет?
А самом VS IDE для ES'а, есть следующие интересные конструкции:
Но честно говоря, студийная IDE для написания ES кода - говно... ... Или ES - говно. Вообщем, без говна там точно не обошлось.
Enterprise Shit?
мои могут и похоливарить, что им удобнее для js - студия 13 или идея 13
ECMA Script ?
ECMA-262
https://ru.wikipedia.org/wiki/EcmaScript
>мои могут и похоливарить, что им удобнее для js - студия 13 или идея 13
Я ща попробовал идею 13. Вроде удобно, но не привычно, что после ввода точки, функции и переменные объекта не показываются. И какую-то ересь на Ctrl+пробел выдаёт.
Хотя, я идею пару недель назад только поставил. Пока даже мир не поприветствовал.
IDE Settings -> Keymap -> Keymaps: Visual Studio
Да если бы бета.
Stay tuned and wait till the first public EAP of JetBrains C++ IDE.
-- http://www.jetbrains.com/objc/features/cpp.html
Так вот оно что )))
Пример:
А если начать писать, то начинает выдавать нормальные хинты.
А summary не пользовался, возможно, тоже как-то делается.
Но только он его в любое место файла добавляет, а не в шапку.
Ну и такой фишкой удобно пользоваться, если установлена синхронизация "Solution Explorer"'а и активного документа.
Ну и для любителей гонять мышь. ;)
2) На XML легко накладывается XSLT преобразование, что обеспечивает лёгкую расширяемость того-же IntelliSence'а
Но, к сожалению, M$ услышал крики ненавистников XML'я и теперь, в ASP.NET vNext, конфиги будут храниться в формате JSO... x_x
Но файл с исходным кодом - не XML. Если я правильно понимаю, его всё равно же придётся парсить и вырезать все "/// питушня". А значит можно распарсить питушню в любом формате и свести к XML без заметных потерь производительности.
Кстати, реализовав более простой формат, можно закодить эффективное преобразование исходников в XmlDocument и получить ПЕРФОМАНС.
Ну и к xml/json как-то пофиг, в зависимости от решаемой проблемы.
Может я такой привиредливый или недостаточно корректно описал проблему.
Есть контейнер, куда пользователь кидает файлы на закачку.
Есть кнопка "Upload", по нажатию на которую, всё содержимое контейнера (ul->li) закачивается на сервер.
Соответственно, пока файлов для закачки нет, то кнопка "Upload" помечена как "disabled"="disabled".
Как только появляются файлы для закачки, кнопка "Upload" становится активной. И при нажатии на неё должна происходить загрузка файлов на сервер.
Соответственно, автор кода, решил в OnButtonClick проверять не наличие файлов для закачки, а проверять, доступна-ли для нажатия кнопка или не доступна (Допустим, сработал OnSubmit на форме или кто-то вызвал метод через консоль).
Получается, следующий нехороший сценарий:
Дизайнер решил поменять стиль на кнопке и вместо "disabled"="disabled" использовать, скажем, отдельный класс или "style="display:none".
Последствие: Код в OnButtonClick будет всегда обходить проверку кнопки стороной. Т.к. она больше никогда не будет disabled.
Решение:
Вместо проверки на доступность кнопки, проверить наличие файлов для закачки.
И не отрабатывала клиентская проверка на наличие файлов. Из-за этого, сервер генерил ошибку об отсутсвии файлов.
Т.к. контора у нас не вендорная, то в некоторых местах, код даже с отключённым JS должен работать.