# jquery.smooth.scroll

> Smoothly scrolling to the top of div on mouse wheel, swipe and arrow keys.

Latest version **2.0.4** (published 2016-08-31) · MIT license · 0 weekly downloads

## Install

```sh
npm install jquery.smooth.scroll
pnpm add jquery.smooth.scroll
yarn add jquery.smooth.scroll
bun add jquery.smooth.scroll
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 2.0.4 |
| Published | 2016-08-31 |
| First published | 2016-08-31 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 2 |
| Known vulnerabilities | 0 (+3 in 1 direct dependencies) |
| Install scripts | no |
| Author | Paweł Galias |
| Maintainers | pgalias |
| Keywords | javascript, typescript, jquery, scroll |

## Links

- npm: https://www.npmjs.com/package/jquery.smooth.scroll
- Repository: https://github.com/pgalias/smoothScroll
- Homepage: https://github.com/pgalias/smoothScroll#readme
- Issues: https://github.com/pgalias/smoothScroll/issues
- npm.io page: https://npm.io/package/jquery.smooth.scroll

## Dependencies (2)

- [jquery](https://npm.io/package/jquery.md) ~3.1.0
- [jquery.event.swipe](https://npm.io/package/jquery.event.swipe.md) ~0.5.4

## Alternatives

- [@openai/codex-sdk](https://npm.io/package/@openai/codex-sdk.md) — 731.4K weekly downloads
- [babel-plugin-transform-react-jsx](https://npm.io/package/babel-plugin-transform-react-jsx.md) — 565.0K weekly downloads
- [babel-helper-remove-or-void](https://npm.io/package/babel-helper-remove-or-void.md) — 508.5K weekly downloads
- [@pnpm/store-controller-types](https://npm.io/package/@pnpm/store-controller-types.md) — 186.9K weekly downloads
- [react-native-signature-canvas](https://npm.io/package/react-native-signature-canvas.md) — 155.6K weekly downloads

## Recent versions

- 2.0.4 (latest) — 2016-08-31
- 2.0.3 — 2016-08-31

## README

# jQuery Smooth Scroll Plugin

## Demo
[demo 1] (https://htmlpreview.github.io/?https://github.com/pgalias/smoothScroll/blob/master/demo1.html) [demo 2] (https://htmlpreview.github.io/?https://github.com/pgalias/smoothScroll/blob/master/demo2.html)

## Description
Smoothly scrolling to the top of div on mouse wheel, swipe and arrow keys.

### Features
- Typescript assets
- Swipe event
- Keyboard arrow keys event
- Possibility of using with scrollable div

### Requirements
- [jQuery] (https://jquery.com/)
- [jQuery.event.swipe] (http://stephen.band/jquery.event.swipe/) by Stephen Band 
- [jQuery.event.move] (http://stephen.band/jquery.event.move/) by Stephen Band as a dependency for jQuery.event.swipe

### Installing
Available options for installing plugin

- Clone repo `git clone https://github.com/pgalias/smoothscroll`
- Bower `bower install jquery.smooth.scroll`
- NPM `npm install jquery.smooth.scroll`

### Usage
1. Add dependencies to html file 

   ```html
   <!-- jQuery -->
   <script src="src/to/jquery.js"></script>
   <!-- optional -->
   <script src="src/to/jquery.event.move.js"></script>
   <script src="src/to/jquery.event.swipe.js"></script>
   <!-- plugin -->
   <script src="src/to/smoothScroll.js"></script>
   ```
2. Use below code in your script file

   ```javascript
   $('selector').smoothScroll([options])
   ```
3. *optional*: You can also put `overflow: hidden` style for this selector if you do not want to allow user to scrolling by scrollbar.

### Options
Available settings

| Attribute       | Type            | Default       | Description                                                       |
| ---             | ---             | ---           | ---                                                               |
| **`parent`**    | String          | *`html,body`* | Reference (class, id, etc) to parent the scroll should be done on |
| **`speed`**     | Number / String | *`slow`*      | Time of scrolling in *ms* (number) or *`slow`*/*`fast`* (string)  |
| **`swipe`**     | Boolean         | *true*        | Allow swipe events                                                |
| **`keyboard`**  | Boolean         | *true*        | Allow keyboard arrow keys scrolling                               |

## Changelog
- v2.0.1
    * some fix
- v2.0.0
    * changed js to ts
    * added swipe event
    * added possibility to smoothly scrolling inside scrollable div
- v1.0.0
    * initial release
    
## TODO
- Prevent MS Edge to firing mousewheel event two times
- Handler for touchpad
- Horizontal scrolling

---
_Source: https://npm.io/package/jquery.smooth.scroll · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
