geniv/nette-overlay

Nette 框架的叠加组件

v2.1.2 2018-12-17 16:27 UTC

This package is auto-updated.

Last update: 2024-09-18 06:21:40 UTC


README

安装

$ composer require geniv/nette-overlay

"geniv/nette-overlay": "^2.0"

require

"php": ">=7.0",
"nette/nette": ">=2.4",
"geniv/nette-general-form": ">=1.0"

包含在应用程序中

neon 配置

services:
    - Overlay

用法

protected function createComponentOverlay(Overlay $overlay): Overlay
{
    //$overlay->setTemplatePath(__DIR__.'/templates/overlayBegin.latte');
    //$overlay->setTemplatePathBoth(__DIR__.'/templates/overlayBegin.latte',__DIR__.'/templates/overlayEnd.latte');
    return $overlay;
}

用法

data-specific 在 href custom-layer-1 中对应 {control overlay:begin ... 中的名称

<a href="#" class="nette-overlay__open" data-specific="custom-layer-1" data-body-padding-fix="true" data-body-overflow-fix="true">Open custom layer #1</a>
...
{control overlay:begin 'custom-layer-1'}
or
{control overlay:begin 'custom-layer-1', 'class-modifier'}
content
{control overlay:end}

或者极端用法,更好的用法是:乘数

protected function createComponentOverlay1(Overlay $overlay): Overlay
{
    $overlay = clone $overlay;
    //$overlay->setTemplatePath(__DIR__.'/templates/overlayBegin.latte');
    return $overlay;
}

和 latte

{control overlay1:begin 'custom-layer-2'}form{control overlay1:end}

JS

netteOverlayOpen([specificNetteOverlay, firstFocus, bodyOverflowFix, bodyPaddingFix]);
netteOverlayClose();