Skip to content

useScrollLock

锁定元素的滚动。

¥Lock scrolling of the element.

示例

TopLeft
BottomLeft
TopRight
BottomRight
Scroll Me
isLocked false

用法

¥Usage

vue
<script setup lang="ts">
import { 
useScrollLock
} from '@vueuse/core'
import {
useTemplateRef
} from 'vue'
const
el
=
useTemplateRef
<HTMLElement>('el')
const
isLocked
=
useScrollLock
(
el
)
isLocked
.
value
= true // lock
isLocked
.
value
= false // unlock
</script> <template> <
div
ref
="
el
" />
</template>

指令用法

¥Directive Usage

vue
<script setup lang="ts">
import { 
vScrollLock
} from '@vueuse/components'
const
data
=
ref
([1, 2, 3, 4, 5, 6])
const
isLocked
=
ref
(false)
const
toggleLock
= useToggle(
isLocked
)
</script> <template> <
div
v-scroll-lo
ck="
isLocked
">
<
div
v-for="
item
in
data
"
:key
="
item
">
{{
item
}}
</
div
>
</
div
>
<
button
@
click
="
toggleLock
()">
Toggle lock state </
button
>
</template>