Skip to content

Affix

Quick Start

Always Fixed


template
<div ref="d1" style="width: 80%; height: 500px; overflow: overlay;">
<div style="width: 80%; height: 300px; background: rgba(0, 204, 153, 0.1); overflow: overlay;"></div>
<fv-Affix :target="() => $refs.d1" left="0" :top="0">
<fv-button>Fixed</fv-button>
</fv-Affix>
<div style="width: 80%; height: 2000px; background: rgba(0, 153, 204, 0.1); overflow: overlay;">
</div>
</div>

Affix-Affix Top


>
Affix Top 1
>
Affix Top 2
>
Affix Top 3
>
Affix Top 4
>
Affix Top 5
>
Affix Top 6
>
Affix Top 7
>
Affix Top 8
>
Affix Top 9
>
Affix Top 10
template
<div ref="d2" style="width: 80%; height: 500px; overflow: overlay;">
<div style="width: 80%; height: 300px; background: rgba(0, 204, 153, 0.1); overflow: overlay;"></div>
<fv-Affix v-for="(item, index) in 10" :key="index" :target="() => $refs.d2" mode="auto" :left="0" :top="0">
<fv-button>Affix Top {{index + 1}}</fv-button>
</fv-Affix>
<div style="width: 80%; height: 2000px; background: rgba(0, 153, 204, 0.1); overflow: overlay;">
</div>
</div>

Affix-Affix Top and Bottom

>
Affix Top and Bottom
template
<div ref="d3" style="width: 80%; height: 500px; overflow: overlay;">
<div style="width: 80%; height: 600px; background: rgba(0, 204, 153, 0.1); overflow: overlay;"></div>
<fv-Affix :target="() => $refs.d3" mode="auto" :bottom="0" :affixPos="['top', 'bottom']">
<fv-button style="width: 150px;">Affix Top and Bottom</fv-button>
</fv-Affix>
<div style="width: 80%; height: 2000px; background: rgba(0, 153, 204, 0.1); overflow: overlay;">
</div>
</div>

Propoties


属性(attr)类型(type)必填(required)默认值(default)说明(statement)
leftStringNoN/Aleft属性值, 参照HTML属性
topStringNoN/Atop属性值, 参照HTML属性
rightStringNoN/Aright属性值, 参照HTML属性
bottomStringNoN/Abottom属性值, 参照HTML属性
targetFunctionYesN/AAffix的目标元素, 为一个函数
modeStringNofixedAffix的模式, fixed, relativeauto
affixPosArrayNo['top']Affix的在父元素滚动吸附位置, 可以为left, top, rightbottom
zIndexNumberNoN/AAffix容器的z-index
themeStringNosystem主题样式, 包含light, dark, system, custom几种样式

Events


事件名(Name)参数类型(args)说明(statement)
changeBoolean当固定状态发生改变时触发, 返回是否固定

Slot


  1. Default
vue
<fv-affix>
    <div></div>
</fv-affix>

特别地 若需要进行性能优化, 可以考虑在元素被隐藏时, 将mode设置为relative.

MIT Licensed