Detaches an event from the component. If the eventName is not given this will detach all event handlers attached. If the handlerToDetach is not given, this will detach all event handlers for eventName.
Detaches an event from the component. If the eventName is not given this will detach all event handlers attached. If the handlerToDetach is not given, this will detach all event handlers for eventName.
Whether to use the mouse wheel in a direction aside from the scroll direction (default: false)
|
+|boundaryMargin|number|
The minimum margin space for [reachStart](Conveyer#event-reachStart), [leaveStart](Conveyer#event-leaveStart), [reachEnd](Conveyer#event-reachEnd), and [leaveEnd](Conveyer#event-leaveEnd) events to be triggered at the beginning and end of the scroll area. (default: 0)
|
+|scrollDebounce|number|
The maximum amount of time the scroll event does not fire for the finishScroll event to be triggered. (default: 100)
|
+|preventDefault|boolean|
Whether to prevent being selected. (default: true)
|
+|preventClickOnDrag|boolean|
Whether to prevent click event when dragging. (default: false)
|
+|preventDefaultOnDrag|boolean|
Whether to use the [preventDefault](https://developer.mozilla.org/ko/docs/Web/API/Event/preventDefault) when the user starts dragging
|
+|autoInit|boolean|
Whether to automatically initialize when an instance is created. If set to false, initialization is possible while calling the init method. (default: true)
|
+|nested|boolean|
If this option is enabled on a Conveyer placed inside an egjs component that has the same scroll direction including the Conveyer itself. The parent component moves in the same direction after the Conveyer reaches the first/last scroll position.
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/ReactiveProperties/vue.txt b/packages/docs/versioned_docs/version-1.6.1/codes/ReactiveProperties/vue.txt
new file mode 100644
index 00000000..3e37f6b9
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/ReactiveProperties/vue.txt
@@ -0,0 +1,39 @@
+
+
+
+
+
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/angularComponent.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/angularComponent.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/angularHTML.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/angularHTML.txt
new file mode 100644
index 00000000..6cf57507
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/angularHTML.txt
@@ -0,0 +1,14 @@
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/html.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/html.txt
new file mode 100644
index 00000000..a44ed380
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/html.txt
@@ -0,0 +1,14 @@
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/js.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/js.txt
new file mode 100644
index 00000000..c0a2fa5c
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/js.txt
@@ -0,0 +1,5 @@
+import Conveyer from "@egjs/conveyer";
+
+const conveyer = new Conveyer(".items", {
+ useSideWheel: true,
+});
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/svelte.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/svelte.txt
new file mode 100644
index 00000000..5eb6886c
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/svelte.txt
@@ -0,0 +1,23 @@
+
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/vue.txt b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/vue.txt
new file mode 100644
index 00000000..3b6bdfdd
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/SideWheel/vue.txt
@@ -0,0 +1,31 @@
+
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/angularComponent.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/angularComponent.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/angularHTML.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/angularHTML.txt
new file mode 100644
index 00000000..9d6a98ad
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/angularHTML.txt
@@ -0,0 +1,14 @@
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/html.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/html.txt
new file mode 100644
index 00000000..98136871
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/html.txt
@@ -0,0 +1,14 @@
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/js.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/js.txt
new file mode 100644
index 00000000..2bfda69c
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/js.txt
@@ -0,0 +1,5 @@
+import Conveyer from "@egjs/conveyer";
+
+const conveyer = new Conveyer(".items", {
+ horizontal: false,
+});
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/svelte.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/svelte.txt
new file mode 100644
index 00000000..82bc6fd0
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/svelte.txt
@@ -0,0 +1,23 @@
+
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/vue.txt b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/vue.txt
new file mode 100644
index 00000000..1077bb31
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/codes/VerticalScroll/vue.txt
@@ -0,0 +1,31 @@
+
+
+
+
1
+
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
10
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/HorizontalScroll.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/HorizontalScroll.mdx
new file mode 100644
index 00000000..4070501d
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/HorizontalScroll.mdx
@@ -0,0 +1,17 @@
+---
+title: Horizontal Scroll
+custom_edit_url: null
+---
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+import HorizontalScroll from "@site/src/examples/HorizontalScroll";
+
+
+You can use drag-based scrolling with NativeScroll.
+
+
+|Property|Type|Description|
+|:---:|:---:|---|
+|[horizontal](/docs/api/ConveyerOptions)|boolean|scroll direction. (default: true)|
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/InfiniteScroll.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/InfiniteScroll.mdx
new file mode 100644
index 00000000..9a7c07c6
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/InfiniteScroll.mdx
@@ -0,0 +1,18 @@
+---
+title: Infinite Scroll
+custom_edit_url: null
+---
+
+
+Infinite Scroll with Conveyer.
+The conveyer can be used in combination with other components.
+
+
+* The InfiniteScroll module uses [InfiniteGrid](https://github.com/naver/egjs-infinitegrid).
+* If it is combined with other components, it is difficult to get a ref. You can initialize it by setting [autoInit](/docs/api/ConveyerOptions) to false and setting the ref directly.
+
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+import InfiniteScroll from "@site/src/examples/InfiniteScroll";
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/Intersection.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/Intersection.mdx
new file mode 100644
index 00000000..30b7932f
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/Intersection.mdx
@@ -0,0 +1,33 @@
+---
+title: Use scrollIntoView Method (intersection side)
+custom_edit_url: null
+---
+
+You can use the conveyer's methods via instance or result.
+
+You can also use scroll-related functions through methods.
+
+
+### scrollIntoView
+[`.scrollIntoView`](/docs/api/Conveyer#scrollIntoView) method scrolls an element or an item in that direction into the view.
+
+Also, if the `intersection` option is enabled, items overlapping on the side can also be included in the target.
+
+
+import Intersection from "@site/src/examples/Intersection";
+import { ScrollIntoViewTargetWithIntersection } from "@site/src/examples/ScrollIntoViewTarget";
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+
+
+
+
+### Example
+
+* If you click the `prev` button, you can align the items in the `start`(target) direction to `end`(align).
+* If you click the `next` button, you can align the items in the `end`(target) direction to `start`(align).
+
+
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/Methods.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/Methods.mdx
new file mode 100644
index 00000000..53335cd8
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/Methods.mdx
@@ -0,0 +1,37 @@
+---
+title: Use scrollIntoView Method (side to side)
+custom_edit_url: null
+---
+
+You can use the conveyer's methods via instance or result.
+
+You can also use scroll-related functions through methods.
+
+
+### scrollIntoView
+[`.scrollIntoView`](/docs/api/Conveyer#scrollIntoView) method scrolls an element or an item in that direction into the view.
+
+|PARAMETER|TYPE|OPTIONAL|DEFAULT|DESCRIPTION|
+|:---:|:---:|:---:|:---:|:---:|
+|target|HTMLElement \| "start" \| "end" \| "prev" \| "next"|||
direction of the element. "start" and "end" find inside. "prev" and "next" find outside.
|
+
+
+
+import Methods from "@site/src/examples/Methods";
+import ScrollIntoViewTarget from "@site/src/examples/ScrollIntoViewTarget";
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+
+
+
+
+### Example
+
+* If you click the `prev` button, you can align the items in the `start`(target) direction to `end`(align).
+* If you click the `next` button, you can align the items in the `end`(target) direction to `start`(align).
+
+
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/Properties.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/Properties.mdx
new file mode 100644
index 00000000..67cb2c8c
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/Properties.mdx
@@ -0,0 +1,21 @@
+---
+title: Use Reactive properties
+custom_edit_url: null
+---
+
+You can change the state using properties without having to use events.
+
+|Property|Type|Description|
+|:---:|:---:|---|
+|[isReachStart](/docs/api/Conveyer#isReachStart)|boolean|Whether the scroll has reached the start.|
+|[isReachEnd](/docs/api/Conveyer#isReachEnd)|boolean|Whether the scroll has reached the end.|
+
+import ReactiveProperties from "@site/src/examples/ReactiveProperties";
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+
+### Example
+
+You can disable prev and next buttons through `isReachStart` and `isReachEnd` properties.
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/SideWheel.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/SideWheel.mdx
new file mode 100644
index 00000000..4be37f0d
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/SideWheel.mdx
@@ -0,0 +1,21 @@
+---
+title: Using Side Wheel
+custom_edit_url: null
+---
+
+You can move conveyer by using the mouse wheel in a direction aside from the scroll direction.
+
+If the useSideWheel option is set to true, horizontal conveyer can be moved with the vertical mouse wheel and the vertical conveyer can be moved with the horizontal mouse wheel.
+
+|Property|Type|Description|
+|:---:|:---:|---|
+|[useSideWheel](/docs/api/ConveyerOptions)|boolean|Whether to use the mouse wheel in a direction aside from the scroll direction (default: false)|
+
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+import SideWheel from "@site/src/examples/SideWheel";
+
+
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/examples/VerticalScroll.mdx b/packages/docs/versioned_docs/version-1.6.1/examples/VerticalScroll.mdx
new file mode 100644
index 00000000..d98635b0
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/examples/VerticalScroll.mdx
@@ -0,0 +1,21 @@
+---
+title: Veritcal Scroll
+custom_edit_url: null
+---
+
+You can use drag-based scrolling with NativeScroll.
+
+If the horizontal option is set to false, vertical scrolling is possible.
+
+|Property|Type|Description|
+|:---:|:---:|---|
+|[horizontal](/docs/api/ConveyerOptions)|boolean|scroll direction. (default: true)|
+
+import ConveyerCodeTabs from "@site/docs/codes/ConveyerCodeTabs";
+import VerticalScroll from "@site/src/examples/VerticalScroll";
+
+
+
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/installation.mdx b/packages/docs/versioned_docs/version-1.6.1/installation.mdx
new file mode 100644
index 00000000..fab17e81
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/installation.mdx
@@ -0,0 +1,134 @@
+---
+title: Installation
+id: installation
+slug: /
+custom_edit_url: null
+---
+
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+## Using the package managers (recommended)
+You can easily install @egjs/Conveyer with package managers like [npm](https://www.npmjs.com/) or [yarn](https://classic.yarnpkg.com/en/)
+
+### npm
+
+
+
+
+```shell
+npm install @egjs/conveyer
+```
+
+
+
+
+```shell
+npm install @egjs/react-conveyer
+```
+
+
+
+
+```shell
+npm install @egjs/vue-conveyer
+```
+
+
+
+
+```shell
+npm install @egjs/vue2-conveyer
+```
+
+
+
+
+```shell
+npm install @egjs/ngx-conveyer
+```
+
+
+
+
+```shell
+npm install @egjs/svelte-conveyer
+```
+
+
+
+
+### yarn
+
+
+
+```shell
+yarn add @egjs/conveyer
+```
+
+
+
+
+```shell
+yarn add @egjs/react-conveyer
+```
+
+
+
+
+```shell
+yarn add @egjs/vue-conveyer
+```
+
+
+
+
+```shell
+yarn add @egjs/vue2-conveyer
+```
+
+
+
+
+```shell
+yarn add @egjs/ngx-conveyer
+```
+
+
+
+
+```shell
+yarn add @egjs/svelte-conveyer
+```
+
+
+
+
+## CDN Links
+### packaged(with dependencies)
+```html
+
+
+
+
+```
diff --git a/packages/docs/versioned_docs/version-1.6.1/listen-to-events.mdx b/packages/docs/versioned_docs/version-1.6.1/listen-to-events.mdx
new file mode 100644
index 00000000..b5de805f
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/listen-to-events.mdx
@@ -0,0 +1,325 @@
+---
+title: Listen to Events
+id: listen-to-events
+slug: /listen-to-events
+custom_edit_url: null
+---
+
+import Link from "@docusaurus/Link";
+import useBaseUrl from "@docusaurus/useBaseUrl";
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+Conveyer has scroll related [events](api/Conveyer#events).
+
+You can refer to the documentation and use it according to each framework.
+
+
+
+
+You can listen to Conveyer's events with [Conveyer#on](api/Conveyer#on)
+
+Since events occur during initialization, set [autoInit](api/ConveyerOptions) to false if you want to register events.
+
+```js
+import Conveyer from "@egjs/conveyer";
+
+const conveyer = new Conveyer(".items", {
+ autoInit: false,
+});
+
+conveyer.on("scrollStart", evt => {
+ console.log(evt);
+});
+
+conveyer.init();
+```
+
+
+
+
+You can use events of Conveyer by getting a result of `useConveyer`.
+
+All events are prefixed with `on-`, and `camelCase`d.
+
+```jsx
+import * as React from "react";
+import { useConveyer } from "@egjs/react-conveyer";
+
+export default () => {
+ const ref = useRef();
+ const {
+ scrollIntoView,
+ onBeginScroll,
+ } = useConveyer(ref);
+
+ onBeginScroll(() => {
+ console.log("begin scroll");
+ }, []);
+
+ return
+
+
+
+
+
+
1
+
2
+
3
+
+
;
+};
+```
+
+See [React Refs and the DOM](https://reactjs.org/docs/refs-and-the-dom.html) for more info.
+
+
+
+
+You can use events of Conveyer by getting a result of `useConveyer`.
+
+All events are prefixed with `on-`, and `camelCase`d.
+
+```html title=""
+
+```
+
+
+
+
+See all available events at Conveyer#events.
diff --git a/packages/docs/versioned_docs/version-1.6.1/quick-start.mdx b/packages/docs/versioned_docs/version-1.6.1/quick-start.mdx
new file mode 100644
index 00000000..a7180912
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/quick-start.mdx
@@ -0,0 +1,189 @@
+---
+title: Quick Start
+id: quick-start
+slug: /quick-start
+custom_edit_url: null
+---
+
+Native Scroll is the most basic and best scrolling function that a browser can support.
+Conveyer adds Drag gestures to your Native Scroll.
+
+
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+
+
+
+
+Add the script/CSS to the page.
+```html
+
+
+```
+
+Or, you can rather import them if you're using a bundler like [webpack](https://webpack.js.org/) or [rollup](https://rollupjs.org/guide/en/).
+```js
+import Conveyer from "@egjs/conveyer";
+```
+
+Then, add some basic HTML layout of Conveyer to your page.
+
+```html
+
+
1
+
2
+
3
+
+```
+Then initialize Conveyer instance with JavaScript after.
+
+```js
+import Conveyer from "@egjs/react-conveyer";
+
+const ig = new Conveyer(".items");
+```
+
+
+
+
+You can import & use Conveyer as a React Component.
+
+```jsx title="SomeComponent.jsx"
+import * as React from "react";
+import { useConveyer } from "@egjs/react-conveyer";
+
+export default () => {
+ const ref = useRef();
+ useConveyer(ref);
+
+ return
+
1
+
2
+
3
+
;
+}
+```
+
+
+
+You can import & use Conveyer as a Vue Component.
+
+```html title=""
+
+
1
+
2
+
3
+
+```
+
+```js title="
+
+
1
+
2
+
3
+
+```
+
+
+
diff --git a/packages/docs/versioned_docs/version-1.6.1/subscribe-to-reactive-properties.mdx b/packages/docs/versioned_docs/version-1.6.1/subscribe-to-reactive-properties.mdx
new file mode 100644
index 00000000..4a656594
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/subscribe-to-reactive-properties.mdx
@@ -0,0 +1,186 @@
+---
+title: Subscribe to Reactive Properties
+id: subscribe-to-reactive-properties
+slug: /subscribe-to-reactive-properties
+custom_edit_url: null
+---
+
+import Link from "@docusaurus/Link";
+import useBaseUrl from "@docusaurus/useBaseUrl";
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+You can subscribe by detecting only changes in [properties](api/Conveyer#properties) instead of events.
+
+You can use reactive properties as a hook.
+
+
+
+
+```js
+conveyer.subscribe("isReachStart", value => {
+ console.log(value);
+});
+```
+
+
+
+
+```jsx
+import * as React from "react";
+import { useConveyer } from "@egjs/react-conveyer";
+
+export default () => {
+ const ref = useRef();
+ const { isReachStart, isReachEnd } = useConveyer(ref);
+
+ return
+```
+
+
+
+
+See all available events at Conveyer#events.
diff --git a/packages/docs/versioned_docs/version-1.6.1/use-the-methods.mdx b/packages/docs/versioned_docs/version-1.6.1/use-the-methods.mdx
new file mode 100644
index 00000000..ccff389d
--- /dev/null
+++ b/packages/docs/versioned_docs/version-1.6.1/use-the-methods.mdx
@@ -0,0 +1,265 @@
+---
+title: Use the Methods
+id: use-the-methods
+slug: /use-the-methods
+custom_edit_url: null
+---
+
+import Link from "@docusaurus/Link";
+import useBaseUrl from "@docusaurus/useBaseUrl";
+import Tabs from '@theme/Tabs';
+import TabItem from '@theme/TabItem';
+
+
+You can see Conveyer's [methods](/docs/api/Conveyer#methods).
+
+
+
+
+You can call methods directly from the Conveyer instance.
+
+```js
+const conveyer = new Conveyer("#el", options);
+
+conveyer.scrollIntoView("end", { align: "start "});
+```
+
+
+
+
+You can call methods of Conveyer by getting a result of `useConveyer`.
+
+```jsx
+import * as React from "react";
+import { useConveyer } from "@egjs/react-conveyer";
+
+export default () => {
+ const ref = useRef();
+ const { scrollIntoView } = useConveyer(ref);
+
+ return
+
+
+
+
+
+
1
+
2
+
3
+
+
;
+};
+```
+
+See [React Refs and the DOM](https://reactjs.org/docs/refs-and-the-dom.html) for more info.
+
+
+
+
+You can call methods of Conveyer by getting a result of `useConveyer`.
+
+```html title=""
+