CtrlK
BlogDocsLog inGet started
Tessl Logo

tessl/npm-better-scroll--mouse-wheel

A TypeScript plugin for BetterScroll that provides enhanced mouse wheel scrolling capabilities with configurable speed, direction, easing, and boundary damping on PC platforms.

Overall
score

98%

Overview
Eval results
Files

rubric.jsonevals/scenario-6/

{
  "context": "This criteria evaluates how well the engineer uses the @better-scroll/mouse-wheel plugin to implement desktop mouse wheel scrolling functionality. The evaluation focuses on proper plugin initialization, configuration of mouse wheel options, event handling, and dynamic reconfiguration of wheel behavior.",
  "type": "weighted_checklist",
  "checklist": [
    {
      "name": "Plugin Registration",
      "description": "Properly imports and registers the mouse-wheel plugin with BScroll using BScroll.use() method before creating scroll instances",
      "max_score": 10
    },
    {
      "name": "BScroll Initialization",
      "description": "Creates a BScroll instance correctly with proper wrapper element selection and enables the mouseWheel plugin in the configuration options",
      "max_score": 15
    },
    {
      "name": "Speed Configuration",
      "description": "Configures the mouseWheel.speed option to control scroll sensitivity, setting an appropriate initial value (e.g., between 20-40 for faster scrolling)",
      "max_score": 15
    },
    {
      "name": "Easing Configuration",
      "description": "Sets the mouseWheel.easeTime option to provide smooth easing transitions during wheel scrolling (typically between 200-500ms)",
      "max_score": 10
    },
    {
      "name": "Dynamic Speed Adjustment",
      "description": "Implements buttons that dynamically update the scroll speed by modifying the mouseWheel configuration and calling bs.refresh() or recreating the instance to apply changes",
      "max_score": 15
    },
    {
      "name": "Direction Inversion",
      "description": "Implements direction toggle using the mouseWheel.invert option to reverse scroll direction when enabled",
      "max_score": 15
    },
    {
      "name": "Event Listener Registration",
      "description": "Registers event listeners for mouse wheel specific events (mousewheelStart, mousewheelMove, mousewheelEnd) using the bs.on() method",
      "max_score": 10
    },
    {
      "name": "Event Handler Implementation",
      "description": "Implements event handlers that update UI status indicators appropriately when wheel scrolling events fire, demonstrating understanding of the event lifecycle",
      "max_score": 10
    }
  ]
}

Install with Tessl CLI

npx tessl i tessl/npm-better-scroll--mouse-wheel

tile.json