覆蓋層與回饋

Target Cursor

四角準星游標鎖定並框住目標元素,閒置時自轉,命中目標時張開框住邊界。

四角準星游標。閒置時是一個緩慢自轉的小方框跟隨滑鼠,游標落在命中 targetSelector 的元素上時,四個角括號會平滑張開框住該元素的邊界。

把這個效果裝進你的專案

在專案資料夾執行指令,CLI 會加入原始碼與依賴套件,再依下方使用範例引用元件。

npx webberui@latest add target-cursor

還沒有專案,或安裝遇到問題?看快速開始 →

Playground

即時調整 props、程式碼片段同步更新——直接試出你要的樣子再複製。

26
12
2
6
6
編輯中的呼叫預設屬性
<TargetCursor/>

完整範例包含預覽的排版與資料。先安裝元件,再把範例檔貼入你的專案。

安裝

npx webberui@latest add https://webberui.com/r/target-cursor.json

或在 components.json 設定 registries 後,改用 @webberui/target-cursor 安裝。

使用

用 TargetCursor 包住一塊區域,並在要被鎖定的元素上加 data-target 屬性(可用 targetSelector 自訂)。

import { TargetCursor } from "@/components/ui/target-cursor";

<TargetCursor className="relative h-[320px] w-full rounded-xl border">
  <button data-target>Launch</button>
  <a data-target href="#">Docs</a>
</TargetCursor>

命中判定用 element.closest(targetSelector),因此目標的任意子元素被指到時也會鎖定整個目標。

Props

Prop型別預設值說明
targetSelectorstring"[data-target]"要鎖定的目標 CSS 選擇器
colorstring"currentColor"準星顏色,隨容器文字色
spinSizenumber26閒置時準星方框邊長(px)
cornerLengthnumber12角括號臂長(px)
cornerThicknessnumber2角括號線寬(px)
paddingnumber6鎖定時外框相對目標外擴的留白(px)
spinDurationnumber6閒置自轉一圈的秒數
dotSizenumber5中心點直徑(px)
classNamestring—容器樣式,界定準星作用範圍與高度

可及性

  • 使用者系統開啟「減少動態效果」時,直接渲染原生游標與內容,不套用自訂準星
  • 準星層為 aria-hidden 純裝飾;粗指標裝置(觸控)自動還原原生游標
  • 顏色預設 currentColor,深淺主題下自動維持對比