Procházet zdrojové kódy

Create a README document.

NaotoshiFujita před 5 roky
rodič
revize
bc1fc9a920
1 změnil soubory, kde provedl 121 přidání a 1 odebrání
  1. 121 1
      README.md

+ 121 - 1
README.md

@@ -1 +1,121 @@
-Work in progress.
+#Splide
+[Splide](https://splidejs.com/) is a lightweight, powerful and flexible slider and carousel, written in pure JavaScript without any dependencies.
+
+* [Demo](https://splidejs.com/)
+* [Documents](https://splidejs.com/documents/)
+
+## Features
+* Pure JavaScript without any dependencies
+* Small size, less than 26kB(10kB gzipped)
+* Flexible and extensible
+* Multiple slides
+* Slide or fade transition by CSS
+* Responsive, supporting breakpoints
+* Accepting CSS relative units, such as vw, %, rem, etc.
+* No need to crop images
+* Autoplay with progress bar and play/pause buttons
+* "Right to left" and vertical direction
+* Mouse drag and touch swipe
+* Nested slider
+* Lazy loading
+* Thumbnail slider
+* Accessibility friendly, supporting keyboard control and ARIA attributes
+* Internet Explorer 10
+
+## Installation
+There are 3 ways to install the Splide on your site.
+* NPM
+* Download
+* CDN
+Only NPM way is explained in the following steps. Visit [this page](https://splidejs.com/getting-started/) for other methods.
+
+1. Get the latest version by NPM:
+    ```bash
+    $ npm install @splidejs/splide
+    ```
+1. Link to the stylesheet:
+    ```html
+    <link rel="stylesheet" href="node_modules/@splidejs/splide/dist/css/splide.min.css">
+    ```
+1. Write HTML for building a slider:
+    ```html
+    <div id="#splide" class="splide">
+        <div class="splide__track">
+            <ul class="splide__list">
+                <li class="splide__slide">Slide 01</li>
+                <li class="splide__slide">Slide 02</li>
+                <li class="splide__slide">Slide 03</li>
+            </ul>
+        </div>
+    </div>
+    ```
+1. Initialize Splide. The selector accepts an ID, a class name or an Element itself:
+    ```javascript
+    import splide from '@splidejs/splide';
+    splide( '#splide' ).mount();
+    ```
+    Note that only the first element will be initialized even if using a class name.
+
+## Options
+### Changing Options
+Pass an object to the second argument of ```splide()```:
+```javascript
+splide( '#splide', {
+	type   : 'loop',
+	perPage: 3,
+} );
+```
+Or set a ```data-splide``` attribute to a root element in a JSON format: 
+```html
+<div id="#splide" class="splide" data-splide="{"type":"loop","perPage":3}">
+</div>
+```
+### Available Options
+Here is a list of options and brief explanations. Visit [this page] for more details.
+
+* **type** Determine a slider type.
+* **rewind** Whether to rewind a slider before the first slide or after the last one.
+* **speed** Transition speed in milliseconds.
+* **width** Define slider max width.
+* **height** Define slider height.
+* **fixedWidth** Fix width of slides.
+* **fixedHeight** Fix height of slides.
+* **heightRatio** Determine height of slides by ratio to a slider width.
+* **perPage** Determine how many slides should be displayed per page.
+* **perMove** Determine how many slides should be moved when a slider goes to next or previous page.
+* **start** Start index.
+* **focus** Determine which slide should be focused.
+* **gap** Gap between slides.
+* **padding** Set padding-left/right in horizontal mode or padding-top/bottom in vertical one.
+* **easing** Animation timing function for CSS transition.
+* **arrows** Whether to append arrows.
+* **arrowPath** Change the arrow SVG path.
+* **pagination** Whether to append pagination(indicator dots).
+* **autoplay** Whether to enable autoplay.
+* **interval** Autoplay interval in milliseconds.
+* **pauseOnHover** Whether to stop autoplay while a slider is hovered.
+* **pauseOnFocus** Whether to stop autoplay while a slider elements are focused.
+* **lazyLoad** Enable lazy load for images.
+* **preloadPages** Determine how many pages around an active slide should be loaded beforehand. This only works the lazyLoad option is “nearby”.
+* **keyboard** Whether to control a slider via keyboard.
+* **drag** Whether to allow mouse drag and touch swipe.
+* **flickThreshold** Threshold for determining if the action is “flick” or “swipe”.
+* **flickPower** Determine power of flick. The larger number this is, the farther a slider runs by flick.
+* **flickMaxPages** Limit a number of pages to move by flick.
+* **direction** Slider direction.
+* **cover** Whether to convert an img src to background-image of its parent element. height, fixedHeight or heightRatio is required.
+* **accessibility** Whether to enable accessibility(ARIA attributes) or not.
+* **isNavigation** Determine if a slider is navigation for another.
+* **trimSpace** Whether to trim spaces before the fist slide or after the last one.
+* **breakpoints** Breakpoints definitions.
+* **classes** Collection of class names.
+* **i18n** Collection of texts for i18n.
+
+## API and Extension
+Splide provides some APIs and the way to customize the behaviour programmatically.
+* [APIs](https://splidejs.com/apis/)
+* [Extension](https://splidejs.com/extension/)
+
+## License
+Splide is released under the MIT license.  
+© 2019 Naotoshi Fujita