CJuiAccordion
| Пакет | zii.widgets.jui |
|---|---|
| Наследование | class CJuiAccordion » CJuiWidget » CWidget » CBaseController » CComponent |
| С момента | 1.1 |
| Исходный код | framework/zii/widgets/jui/CJuiAccordion.php |
CJuiAccordion инкапсулирует плагин JUI Accordion.
Для использования этого виджета, вы можете вставить следующий код в представление:
$this->widget('zii.widgets.jui.CJuiAccordion',array(
'panels'=>array(
'panel 1'=>'content for panel 1',
'panel 2'=>'content for panel 2',
// panel 3 contains the content rendered by a partial view
'panel 3'=>$this->renderPartial('_partial',null,true),
),
// additional javascript options for the accordion plugin
'options'=>array(
'animate'=>'bounceslide',
),
));
Настроив свойство options, вы можете указать параметры, которые необходимо передать плагину JUI accordion. Обратитесь к документации JUI Accordion API для возможных параметров (имя-значение) и к странице JUI Accordion для общего описания и демо.
Свойства общедоступного доступа
| Свойство | Тип | Описание | Определено в |
|---|---|---|---|
| actionPrefix | строка | Префикс для идентификаторов действий. | CWidget |
| contentTemplate | строка | Шаблон, используемый для генерации содержимого каждого раздела. | CJuiAccordion |
| controller | CController | Возвращает контроллер, к которому принадлежит этот виджет. | CWidget |
| cssFile | смешанный тип | Имя файла темы CSS. | CJuiWidget |
| headerTemplate | строка | Шаблон, используемый для генерации заголовка каждого раздела. | CJuiAccordion |
| htmlOptions | массив | Атрибуты HTML, которые должны быть отображены в HTML-теге, представляющем виджет JUI. | CJuiWidget |
| id | строка | Возвращает идентификатор виджета или генерирует новый, если запрошено. | CWidget |
| options | массив | Исходные параметры JavaScript, которые должны быть переданы плагину JUI. | CJuiWidget |
| owner | CBaseController | Возвращает владельца/создателя этого виджета. | CWidget |
| panels | массив | Список разделов (заголовок раздела => содержимое раздела). | CJuiAccordion |
| scriptFile | смешанный тип | Основной файл JavaScript JUI. | CJuiWidget |
| scriptUrl | строка | Базовый URL, содержащий все файлы JavaScript JUI. | CJuiWidget |
| skin | смешанный тип | Имя скина, используемого этим виджетом. | CWidget |
| tagName | строка | Имя контейнерного элемента, содержащего все разделы. | CJuiAccordion |
| theme | строка | Имя темы JUI. | CJuiWidget |
| themeUrl | строка | Базовый URL, содержащий все папки тем JUI. | CJuiWidget |
| viewPath | строка | Возвращает каталог, содержащий файлы представления для этого виджета. | CWidget |
Публичные методы
| Метод | Описание | Определено в |
|---|---|---|
| __call() | Вызывает именованный метод, который не является методом класса. | CComponent |
| __construct() | Конструктор. | CWidget |
| __get() | Возвращает значение свойства, список обработчиков событий или поведение по его имени. | CComponent |
| __isset() | Проверяет, является ли значение свойства нулевым. | CComponent |
| __set() | Устанавливает значение свойства компонента. | CComponent |
| __unset() | Устанавливает свойство компонента в нулевое значение. | CComponent |
| actions() | Возвращает список действий, используемых этим виджетом. | CWidget |
| asa() | Возвращает объект поведения с указанным именем. | CComponent |
| attachBehavior() | Присоединяет поведение к этому компоненту. | CComponent |
| attachBehaviors() | Присоединяет список поведений к компоненту. | CComponent |
| attachEventHandler() | Присоединяет обработчик событий к событию. | CComponent |
| beginCache() | Начинает фрагментарное кэширование. | CBaseController |
| beginClip() | Начинает запись клипа. | CBaseController |
| beginContent() | Начинает рендеринг контента, который должен быть оформлен указанным представлением. | CBaseController |
| beginWidget() | Создаёт виджет и выполняет его. | CBaseController |
| canGetProperty() | Определяет, можно ли считать свойство. | CComponent |
| canSetProperty() | Определяет, можно ли установить свойство. | CComponent |
| createWidget() | Создаёт виджет и инициализирует его. | CBaseController |
| detachBehavior() | Отсоединяет поведение от компонента. | CComponent |
| detachBehaviors() | Отсоединяет все поведения от компонента. | CComponent |
| detachEventHandler() | Отсоединяет существующий обработчик событий. | CComponent |
| disableBehavior() | Отключает присоединённое поведение. | CComponent |
| disableBehaviors() | Отключает все присоединённые к этому компоненту поведения. | CComponent |
| enableBehavior() | Включает присоединённое поведение. | CComponent |
| enableBehaviors() | Включает все присоединённые к этому компоненту поведения. | CComponent |
| endCache() | Заканчивает фрагментарное кэширование. | CBaseController |
| endClip() | Заканчивает запись клипа. | CBaseController |
| endContent() | Заканчивает рендеринг контента. | CBaseController |
| endWidget() | Заканчивает выполнение указанного виджета. | CBaseController |
| evaluateExpression() | Вычисляет PHP-выражение или обратный вызов в контексте этого компонента. | CComponent |
| getController() | Возвращает контроллер, к которому принадлежит этот виджет. | CWidget |
| getEventHandlers() | Возвращает список присоединённых обработчиков событий для события. | CComponent |
| getId() | Возвращает идентификатор виджета или генерирует новый, если требуется. | CWidget |
| getOwner() | Возвращает владельца/создателя этого виджета. | CWidget |
| getViewFile() | Ищет файл скрипта представления в соответствии с именем представления. | CWidget |
| getViewPath() | Возвращает каталог, содержащий файлы представлений для этого виджета. | CWidget |
| hasEvent() | Определяет, определено ли событие. | CComponent |
| hasEventHandler() | Проверяет, есть ли прикреплённые обработчики для указанного события. | CComponent |
| hasProperty() | Определяет, определено ли свойство. | CComponent |
| init() | Инициализирует виджет. | CJuiWidget |
| raiseEvent() | Вызывает событие. | CComponent |
| render() | Отображает представление. | CWidget |
| renderFile() | Отображает файл представления. | CBaseController |
| renderInternal() | Отображает файл представления. | CBaseController |
| run() | Выполнить этот виджет. | CJuiAccordion |
| setId() | Устанавливает идентификатор виджета. | CWidget |
| widget() | Создаёт виджет и выполняет его. | CBaseController |
Защищенные методы
| Метод | Описание | Определено в |
|---|---|---|
| registerCoreScripts() | Регистрирует основные файлы скриптов. | CJuiWidget |
| registerScriptFile() | Регистрирует файл JavaScript по адресу scriptUrl. | CJuiWidget |
| resolvePackagePath() | Определяет путь к установке пакета JUI. | CJuiWidget |
Подробное описание свойств
contentTemplate свойство
public string $contentTemplate;
шаблон, используемый для генерации содержимого каждого раздела. Токен "{content}" в шаблоне будет заменён содержимым раздела.
headerTemplate свойство
public string $headerTemplate;
шаблон, используемый для генерации каждого заголовка раздела. Токен "{title}" в шаблоне будет заменён названием раздела. Обратите внимание, что если вы внесли изменения в этот шаблон, вам может потребоваться также скорректировать параметр «заголовок» в параметрах.
panels свойство
public array $panels;
список панелей (заголовок панели=>содержимое панели). Обратите внимание, что ни заголовок панели, ни содержимое панели не будут кодироваться в HTML.
tagName свойство
public string $tagName;
имя контейнерного элемента, содержащего все панели. По умолчанию 'div'.
Подробное описание методов
run() метод
public void run() |
public function run()
{
$id=$this->getId();
if(isset($this->htmlOptions['id']))
$id=$this->htmlOptions['id'];
else
$this->htmlOptions['id']=$id;
echo CHtml::openTag($this->tagName,$this->htmlOptions)."\n";
foreach($this->panels as $title=>$content)
{
echo strtr($this->headerTemplate,array('{title}'=>$title))."\n";
echo strtr($this->contentTemplate,array('{content}'=>$content))."\n";
}
echo CHtml::closeTag($this->tagName);
$options=CJavaScript::encode($this->options);
Yii::app()->getClientScript()->registerScript(__CLASS__.'#'.$id,"jQuery('#{$id}').accordion($options);");
}
Запустить этот виджет. Этот метод регистрирует необходимый JavaScript и отображает необходимый HTML-код.
© 2008–2017 by Yii Software LLC
Licensed under the three clause BSD license.
http://www.yiiframework.com/doc/api/1.1/CJuiAccordion