useVisibilityChange

Track document visibility state.

https://www.shaktools.com/shak-hooks
Sensor

API Reference

Installation

terminal
pnpm add @shak-hooks/usehooks
import.ts
import { useVisibilityChange } from "@shak-hooks/usehooks";
Source: packages/react/src/useVisibilityChange.ts

Signature

signature.ts
export function useVisibilityChange(): boolean

Parameters

No parameters.

Returns

boolean

Implementation

use-visibility-change.ts
1import { useEffect, useState } from "react";
2
3export function useVisibilityChange() {
4 const [isVisible, setIsVisible] = useState(true);
5
6 useEffect(() => {
7 const handleVisibilityChange = () => {
8 setIsVisible(document.visibilityState === "visible");
9 };
10
11 document.addEventListener("visibilitychange", handleVisibilityChange);
12 return () => {
13 document.removeEventListener("visibilitychange", handleVisibilityChange);
14 };
15 }, []);
16
17 return isVisible;
18}

Advertisement

Google Ads

Usage

example.tsx
1import { useVisibilityChange } from "@shak-hooks/usehooks";
2
3const result = useVisibilityChange();
4// result: boolean
5// Use values directly (React state).

Let‘s do great work together

Empowering creators with free, high-performance AI, SEO, and developer tools. Join thousands of users optimizing their workflow with Shak-Tools.

Tools10+ Free
UsersGlobal

Stay in the loop

Join our newsletter for the latest AI tools and updates.

ShakTools
© 2025 Shaktools. All Rights Reserved.Privacy Policy