
Research
2025 Report: Destructive Malware in Open Source Packages
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.
solid-prevent-scroll
Advanced tools
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
By default, it also hides the scrollbar of the body element and adds padding to it to prevent the page from jumping. This behavior can be disabled and modified with the hideScrollbar, preventScrollbarShift, and preventScrollbarShiftMode props.
It also adds the CSS variable --scrollbar-width to the body element, indicating the width of the currently removed scrollbar. You can use this variable to add padding to fixed elements, like a topbar.
import createPreventScroll from 'solid-prevent-scroll'
const DialogContent: Component<{
open: boolean
}> = (props) => {
const [ref, setRef] = createSignal(null)
createPreventScroll({
element: ref,
enabled: () => props.open, // default = true
hideScrollbar: true, // default
preventScrollbarShift: true, // default
preventScrollbarShiftMode: 'padding', // default, `padding` or `margin`
restoreScrollPosition: true, // default
allowPinchZoom: false, // default
})
return (
<Show when={props.open()}>
<div ref={setRef}>Dialog</div>
</Show>
)
}
Use the --scrollbar-width CSS variable to add padding to fixed elements to prevent the content from shifting when the scrollbar is removed:
<header
class="fixed top-0 inset-x-0 z-50"
style={{
'padding-right': 'var(--scrollbar-width, 0)',
}}
>
Header
</header>
This utility is from the maintainers of corvu, a collection of unstyled, accessible and customizable UI primitives for SolidJS. It is also documented in the corvu docs under Prevent Scroll.
FAQs
SolidJS utility that prevents scrolling outside of a given DOM element. Works by preventing events that else would lead to scrolling.
The npm package solid-prevent-scroll receives a total of 39,990 weekly downloads. As such, solid-prevent-scroll popularity was classified as popular.
We found that solid-prevent-scroll demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Research
Destructive malware is rising across open source registries, using delays and kill switches to wipe code, break builds, and disrupt CI/CD.

Security News
Socket CTO Ahmad Nassri shares practical AI coding techniques, tools, and team workflows, plus what still feels noisy and why shipping remains human-led.

Research
/Security News
A five-month operation turned 27 npm packages into durable hosting for browser-run lures that mimic document-sharing portals and Microsoft sign-in, targeting 25 organizations across manufacturing, industrial automation, plastics, and healthcare for credential theft.