Разработчики) | Yahoo! |
---|---|
изначальный выпуск | 13 февраля 2006 г . [1] |
Окончательный релиз | 3.18.1 / 22 октября 2014 г . [2] |
Репозиторий | |
Написано в | JavaScript |
Операционная система | Кросс-платформенный ( JavaScript ) |
Тип | Библиотека JavaScript |
Лицензия | Лицензия BSD |
Интернет сайт | yuilibrary |
Yahoo! Библиотека пользовательского интерфейса ( YUI ) - это прекращенная библиотека JavaScript с открытым исходным кодом для создания полнофункциональных интерактивных веб-приложений с использованием таких методов, как Ajax , DHTML и сценарии DOM . YUI включает несколько основных ресурсов CSS . Он доступен по лицензии BSD . [3] Разработка YUI началась в 2005 году, а Yahoo! такие свойства, как My Yahoo! и Yahoo! Первая страница начала использовать YUI летом того же года. YUI был выпущен для публичного использования в феврале 2006 года. [1] Он активно разрабатывался основной командой Yahoo! инженеры.
В сентябре 2009 года Yahoo! выпустила YUI 3, новую версию YUI, перестроенную с нуля, чтобы модернизировать библиотеку и включить уроки, извлеченные из YUI 2. Среди улучшений - механизм , управляемый селектором CSS , такой как jQuery , для извлечения элементов DOM , больший упор на детализацию modules, начальный файл меньшего размера, который при необходимости загружает другие модули, а также различные синтаксические изменения, призванные ускорить и упростить написание кода. [4]
Проект библиотеки YUI в Yahoo! была основана Томасом Ша и спонсируется Yahoo! соучредитель Джерри Янг ; его главными архитекторами были Ша, Адам Мур и Мэтт Суини. Разработчики библиотеки ведут YUIBlog; Сообщество YUI обсуждает библиотеку и ее реализации на своем форуме сообщества.
29 августа 2014 г. было объявлено, что активная разработка YUI компанией Yahoo! закончится, сославшись на эволюцию стандартов JavaScript, неуклонное снижение интереса разработчиков к большим библиотекам JavaScript и распространение серверных решений. Дальнейшая разработка будет ограничиваться отладочными версиями, решающими проблемы, которые «абсолютно критичны для свойств Yahoo». [5]
Особенности [ править ]
Библиотека YUI полностью документирована на ее веб-сайте; подробная документация по API сопровождает загрузку библиотеки. Он состоит из шести типов компонентов: ядра YUI, служебных программ, элементов управления пользовательского интерфейса, компонентов CSS, инструментов разработчика и инструментов сборки.
Ядро [ править ]
YUI Core - это легкий (уменьшенный до 31 КБ) набор инструментов для управления событиями и манипуляциями с DOM.
- Глобальный объект YUI
- Глобальный объект YUI содержит языковые утилиты, загрузчик сценариев и другую базовую инфраструктуру для YUI.
- Коллекция Dom
- Помогает с общими задачами создания сценариев DOM , включая позиционирование элементов и управление стилями CSS .
- Утилита событий
- Предоставляет разработчикам простой и безопасный доступ к событиям браузера (таким как щелчки мыши и нажатия клавиш). Он также предоставляет объект Custom Event для публикации и подписки на настраиваемые события.
Утилиты [ править ]
- Анимация
- Помогает создавать «эффекты» за счет анимации положения, размера, непрозрачности или других характеристик элементов страницы.
- Диспетчер истории браузера
- Помогает веб-приложениям использовать кнопку браузера «Назад» и функцию создания закладок.
- Диспетчер подключений
- Помогает управлять транзакциями XMLHttpRequest в кросс-браузерной манере. Он имеет интегрированную поддержку сообщений форм , обработки ошибок , обратных вызовов и загрузки файлов.
- Cookie-файлы
- Позволяет управлять файлами cookie и вложенными файлами браузера через простой API.
- Источник данных
- Предоставляет общий настраиваемый интерфейс для других компонентов для взаимодействия с различными типами данных, от простых массивов JavaScript до онлайн-серверов через XHR.
- Перетащите и отпустите
- Утилита перетаскивания YUI позволяет легко делать элементы « перетаскиваемыми » и создавать цели перетаскивания, которые реагируют на события перетаскивания.
- Элемент
- Предоставляет оболочку для элементов HTML в DOM и упрощает общие задачи, такие как добавление слушателей, управление DOM, а также установка и получение атрибутов.
- Получать
- Утилита Get поддерживает асинхронную загрузку данных и сценариев через узлы сценариев и динамическую загрузку внешних файлов CSS.
- ImageLoader
- ImageLoader YUI позволяет отложить загрузку изображений, которые не видны в области просмотра во время загрузки страницы. Это может привести к значительному увеличению производительности.
- JSON
- Утилита JSON предоставляет методы для проверки входящих данных JSON для проверки их безопасности и методы преобразования данных JavaScript в строку в формате JSON. Эти методы основаны на работе Дугласа Крокфорда на JSON.org.
- Изменить размер
- Позволяет сделать любой HTML-элемент блочного уровня изменяемым.
- Селектор
- Утилита YUI Selector позволяет вам получать ссылки на элементы HTML с помощью синтаксиса селектора CSS3.
- Загрузчик YUI
- YUI Loader - это механизм загрузчика на стороне клиента, который может динамически загружать любой компонент YUI (и зависимости) на лету.
Элементы управления [ править ]
- Автозаполнение
- Предоставляет функцию автозаполнения (списки предложений и функция опережающего ввода) для взаимодействия с пользователем, включающего ввод текста. Он поддерживает множество форматов источников данных. Он также поддерживает источники данных на стороне сервера через XMLHttpRequest.
- Кнопка
- Позволяет создавать многофункциональные графические кнопки, которые работают как кнопки традиционных HTML-форм.
- Календарь
- Графический динамический элемент управления, используемый для выбора даты.
- Диаграммы
- Элемент управления диаграммами извлекает данные с помощью утилиты DataSource и отображает данные в различных распространенных форматах диаграмм (линия, столбец, круговая диаграмма и т. Д.).
- Палитра цветов
- Элемент управления «Палитра цветов» предоставляет богатый визуальный интерфейс для выбора цвета.
- Контейнер
- Поддерживает различные шаблоны окон DHTML, включая всплывающую подсказку , панель, диалог, SimpleDialog, модуль и наложение.
- Таблица данных
- Простой, но мощный API для отображения табличных данных, доступных для чтения с экрана, на веб-странице. Известные функции включают в себя сортируемые столбцы, разбиение на страницы, прокрутку, выбор строк, столбцы с изменяемым размером и встроенное редактирование.
- ImageCropper
- ImageCropper предоставляет пользовательский интерфейс и интерактивные элементы для обрезки изображений на стороне клиента.
- Менеджер компоновки
- Позволяет без особых усилий создавать кросс-браузерные макеты с идеальным пикселем, обеспечивая фиксированный макет, содержащий верхнюю, нижнюю, левую, правую и центральную единицы макета.
- Меню
- Предоставляет простой API для создания всплывающих меню , строк меню и контекстных меню.
- Редактор форматированного текста
- YUI Rich Text Editor представляет собой сложный стороне клиента текстовый процессор , который имеет модульную конструкцию и легко конфигурируется, подходит для любого открытого состава ситуации для ввода текста.
- Слайдер
- Предоставляет общий элемент ползунка, который позволяет пользователю выбирать в пределах конечного диапазона значений по одной или двум осям.
- TabView
- Обеспечивает просмотр содержимого с вкладками; поддерживает динамическую загрузку содержимого вкладки через XMLHttpRequest.
- В виде дерева
- Создает дерево содержимого, узлы которого можно расширять и сжимать.
- Загрузчик
- Позволяет загружать многофайловые файлы с обратной связью о ходе загрузки.
Ресурсы CSS [ править ]
- База CSS
- Используйте Base after Reset, чтобы обеспечить согласованную кроссбраузерную замену стандартных правил CSS браузера, к которым привыкли веб-разработчики.
- CSS сетки
- Семь базовых каркасов страниц с компонентами подразделов для поддержки более 1000 различных макетов страниц.
- CSS шрифты
- Стандартизированные кроссбраузерные семейства шрифтов и рендеринг размеров.
- Сброс CSS
- В объявлениях CSS удаляются поля и стандартизируется кроссбраузерный рендеринг общих элементов.
Инструменты разработчика [ править ]
- Регистратор
- Предоставляет быстрый и простой способ записи сообщений журнала в экранную консоль, расширение Firebug для Mozilla Firefox или консоль Safari JavaScript.
- Профайлер
- Кроссбраузерный невизуальный профилировщик кода для JavaScript.
- ProfilerViewer
- Используется в сочетании с Profiler для обеспечения расширенной визуализации ваших данных профилирования - как в графическом (с использованием элемента управления диаграммами), так и в табличном формате (с использованием DataTable).
- YUI Test
- YUI Test - это среда тестирования для браузерных решений JavaScript. Используя YUI Test, вы можете легко добавить модульное тестирование в свои решения JavaScript. Хотя YUI Test не является прямым портом какой-либо конкретной платформы xUnit, он имеет некоторые характеристики от nUnit и JUnit.
Инструменты сборки [ править ]
- Компрессор YUI
- YUI Compressor - это инструмент, который безопасно минимизирует JavaScript и CSS.
- YUIDoc
- YUIDoc - это инструмент, написанный на JavaScript, который генерирует доступную для поиска API-документацию кода JavaScript. Обычно он используется как часть процесса сборки. YUIDoc управляется комментариями и совместим с множеством стилей кодирования и языков программирования.
См. Также [ править ]
- Сравнение фреймворков JavaScript
- CSS-фреймворк
Ссылки [ править ]
- ^ a b «Библиотека пользовательского интерфейса Yahoo!» . Yahoo! Блог пользовательского интерфейса . 13 февраля 2006 г.
- ^ "Релизы · yui / yui3 · GitHub" . GitHub . Проверено 24 апреля 2020 года .
- ^ "Библиотека YUI" . Проверено 13 июня 2008 года .
- ^ "YUI 3.0.0: Первый выпуск GA кодовой строки нового поколения YUI" . Yahoo! Блог пользовательского интерфейса . 29 сентября 2009 . Проверено 18 ноября 2009 года .
- ^ «Важное объявление относительно YUI» . Yahoo! Инженерное дело . Проверено 29 августа 2014 .
Внешние ссылки [ править ]
- Сайт проекта YUI и средства отслеживания проблем
- Открытый репозиторий исходного кода YUI
- Yahoo! Блог пользовательского интерфейса
- Yahoo! Библиотека шаблонов проектирования
- YUICoder.com - манипулирование Yahoo! Пользовательский интерфейс (охватывает старый YUI 2.x)