diff --git a/README.md b/README.md index 5eb66157b..1ad157f97 100644 --- a/README.md +++ b/README.md @@ -18,7 +18,7 @@ --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal Donate](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -385,80 +385,141 @@ Then you will be able to use and configure them as explained in [options](https: ## Options -- `licenseKey`: (default `null`). **This option is compulsory.** If you use fullPage in a non open source project, then you should use the license key provided on the purchase of the fullPage Commercial License. If your project is open source and it is compatible with the GPLv3 license you can use the option `gplv3-license`. Please read more about licenses [here](https://github.com/alvarotrigo/fullPage.js#license) and [on the website](https://alvarotrigo.com/fullPage/pricing/). Example of usage: +### licenseKey + +(default `null`) **This option is compulsory.** If you use fullPage in a non open source project, then you should use the license key provided on the purchase of the fullPage Commercial License. If your project is open source and it is compatible with the GPLv3 license you can use the option `gplv3-license`. Please read more about licenses [here](https://github.com/alvarotrigo/fullPage.js#license) and [on the website](https://alvarotrigo.com/fullPage/pricing/). Example of usage: - ```javascript - new fullpage('#fullpage', { - licenseKey: 'YOUR_KEY_HERE' - }); - ``` +```javascript +new fullpage('#fullpage', { + licenseKey: 'YOUR_KEY_HERE' +}); +``` + +### controlArrows -- `controlArrows`: (default `true`) Determines whether to use control arrows for the slides to move right or left. +(default `true`) Determines whether to use control arrows for the slides to move right or left. -- `controlArrowsHTML`: (default `['
', '
'],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. +### controlArrowsHTML -- `verticalCentered`: (default `true`) Vertically centering of the content using flexbox. You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +(default `['
', '
'],`). +Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. -- `scrollingSpeed`: (default `700`) Speed in milliseconds for the scrolling transitions. +### verticalCentered -- `sectionsColor`: (default `none`) Define the CSS `background-color` property for each section. +(default `true`) Vertically centering of the content using flexbox. You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) + +### scrollingSpeed + +(default `700`) Speed in milliseconds for the scrolling transitions. + +### sectionsColor + +(default `none`) Define the CSS `background-color` property for each section. Example: - ```javascript - new fullpage('#fullpage', { - sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], - }); - ``` +```javascript +new fullpage('#fullpage', { + sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], +}); +``` + +### anchors -- `anchors`: (default `[]`) Defines the anchor links (#example) to be shown on the URL for each section. Anchors value should be unique. The position of the anchors in the array will define to which sections the anchor is applied. (second position for second section and so on). Using anchors forward and backward navigation will also be possible through the browser. This option also allows users to bookmark a specific section or slide. **Be careful!** anchors can not have the same value as any ID element on the site (or NAME element for IE). +(default `[]`) Defines the anchor links (#example) to be shown on the URL for each section. Anchors value should be unique. The position of the anchors in the array will define to which sections the anchor is applied. (second position for second section and so on). Using anchors forward and backward navigation will also be possible through the browser. This option also allows users to bookmark a specific section or slide. **Be careful!** anchors can not have the same value as any ID element on the site (or NAME element for IE). Now anchors can be defined directly in the HTML structure by using the attribute `data-anchor` as explained here. -- `lockAnchors`: (default `false`) Determines whether anchors in the URL will have any effect at all in the library. You can still using anchors internally for your own functions and callbacks, but they won't have any effect in the scrolling of the site. Useful if you want to combine fullPage.js with other plugins using anchor in the URL. +### lockAnchors + +(default `false`) Determines whether anchors in the URL will have any effect at all in the library. You can still using anchors internally for your own functions and callbacks, but they won't have any effect in the scrolling of the site. Useful if you want to combine fullPage.js with other plugins using anchor in the URL. -- `easing`: (default `easeInOutCubic`) Defines the transition effect to use for the vertical and horizontal scrolling. +### easing + +(default `easeInOutCubic`) Defines the transition effect to use for the vertical and horizontal scrolling. It requires the file `vendors/easings.min.js` or [jQuery UI](https://jqueryui.com/) for using some of [its transitions](https://api.jqueryui.com/easings/). Other libraries could be used instead. -- `easingcss3`: (default `ease`) Defines the transition effect to use in case of using `css3:true`. You can use the [pre-defined ones](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (such as `linear`, `ease-out`...) or create your own ones using the `cubic-bezier` function. You might want to use [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) for it. +### easingcss3 + +(default `ease`) Defines the transition effect to use in case of using `css3:true`. You can use the [pre-defined ones](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (such as `linear`, `ease-out`...) or create your own ones using the `cubic-bezier` function. You might want to use [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) for it. + +### loopTop + +(default `false`) Defines whether scrolling up in the first section should scroll to the last one or not. + +### loopBottom -- `loopTop`: (default `false`) Defines whether scrolling up in the first section should scroll to the last one or not. +(default `false`) Defines whether scrolling down in the last section should scroll to the first one or not. -- `loopBottom`: (default `false`) Defines whether scrolling down in the last section should scroll to the first one or not. +### loopHorizontal -- `loopHorizontal`: (default `true`) Defines whether horizontal sliders will loop after reaching the last or previous slide or not. +(default `true`) Defines whether horizontal sliders will loop after reaching the last or previous slide or not. -- `css3`: (default `true`). Defines whether to use JavaScript or CSS3 transforms to scroll within sections and slides. Useful to speed up the movement in tablet and mobile devices with browsers supporting CSS3. If this option is set to `true` and the browser doesn't support CSS3, a fallback will be used instead. +### css3 -- `autoScrolling`: (default `true`) Defines whether to use the "automatic" scrolling or the "normal" one. It also has affects the way the sections fit in the browser/device window in tablets and mobile phones. +(default `true`) Defines whether to use JavaScript or CSS3 transforms to scroll within sections and slides. Useful to speed up the movement in tablet and mobile devices with browsers supporting CSS3. If this option is set to `true` and the browser doesn't support CSS3, a fallback will be used instead. -- `fitToSection`: (default `true`) Determines whether or not to fit sections to the viewport or not. When set to `true` the current active section will always fill the whole viewport. Otherwise the user will be free to stop in the middle of a section. +### autoScrolling -- `fitToSectionDelay`: (default 1000). If `fitToSection` is set to true, this delays the fitting by the configured milliseconds. +(default `true`) Defines whether to use the "automatic" scrolling or the "normal" one. It also has affects the way the sections fit in the browser/device window in tablets and mobile phones. -- `scrollBar`: (default `false`) Determines whether to use scroll bar for the **vertical sections** on site or not. In case of using scroll bar, the `autoScrolling` functionality will still work as expected. The user will also be free to scroll the site with the scroll bar and fullPage.js will fit the section in the screen when scrolling finishes. +### fitToSection -- `paddingTop`: (default `0`) Defines the top padding for each section with a numerical value and its measure (paddingTop: '10px', paddingTop: '10em'...) Useful in case of using a fixed header. +(default `true`) Determines whether or not to fit sections to the viewport or not. When set to `true` the current active section will always fill the whole viewport. Otherwise the user will be free to stop in the middle of a section. -- `paddingBottom`: (default `0`) Defines the bottom padding for each section with a numerical value and its measure (paddingBottom: '10px', paddingBottom: '10em'...). Useful in case of using a fixed footer. +### fitToSectionDelay -- `fixedElements`: (default `null`) Defines which elements will be taken off the scrolling structure of the plugin which is necessary when using the `css3` option to keep them fixed. It requires a string with the Javascript selectors for those elements. (For example: `fixedElements: '#element1, .element2'`) +(default 1000) If `fitToSection` is set to true, this delays the fitting by the configured milliseconds. -- `normalScrollElements`: (default `null`) [Demo](https://codepen.io/alvarotrigo/pen/RmVazM) If you want to avoid the auto scroll when scrolling over some elements, this is the option you need to use. (useful for maps, scrolling divs etc.) It requires a string with the Javascript selectors for those elements. (For example: `normalScrollElements: '#element1, .element2'`). This option should not be applied to any section/slide element itself. +### scrollBar -- `bigSectionsDestination`: (default `null`) [Demo](https://codepen.io/alvarotrigo/pen/vYLdMrx) Defines how to scroll to a section which height is bigger than the viewport and when not using `scrollOverflow:true`. (Read [how to create smaller or bigger sections](https://github.com/alvarotrigo/fullPage.js#creating-smaller-or-bigger-sections)). By default fullPage.js scrolls to the top if you come from a section above the destination one and to the bottom if you come from a section below the destination one. Possible values are `top`, `bottom`, `null`. +(default `false`) Determines whether to use scroll bar for the **vertical sections** on site or not. In case of using scroll bar, the `autoScrolling` functionality will still work as expected. The user will also be free to scroll the site with the scroll bar and fullPage.js will fit the section in the screen when scrolling finishes. -- `keyboardScrolling`: (default `true`) Defines if the content can be navigated using the keyboard. +### paddingTop -- `touchSensitivity`: (default `5`) Defines a percentage of the browsers window width/height, and how far a swipe must measure for navigating to the next section / slide +(default `0`) Defines the top padding for each section with a numerical value and its measure (paddingTop: '10px', paddingTop: '10em'...) Useful in case of using a fixed header. -- `continuousVertical`: (default `false`) Defines whether scrolling down in the last section should scroll down to the first one and if scrolling up in the first section should scroll up to the last one. Not compatible with `loopTop`, `loopBottom` or any scroll bar present in the site (`scrollBar:true` or `autoScrolling:false`). +### paddingBottom -- `continuousHorizontal`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether sliding right in the last slide should slide right to the first one or not, and if scrolling left in the first slide should slide left to the last one or not. Not compatible with `loopHorizontal`. Requires fullpage.js >= 3.0.1. +(default `0`) Defines the bottom padding for each section with a numerical value and its measure (paddingBottom: '10px', paddingBottom: '10em'...). Useful in case of using a fixed footer. -- `scrollHorizontally`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether to slide horizontally within sliders by using the mouse wheel or trackpad. It can only be used when using: `autoScrolling:true`. Ideal for story telling. Requires fullpage.js >= 3.0.1. +### fixedElements -- `interlockedSlides`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determines whether moving one horizontal slider will force the sliding of sliders in other section in the same direction. Possible values are `true`, `false` or an array with the interlocked sections. For example `[1,3,5]` starting by 1. Requires fullpage.js >= 3.0.1. +(default `null`) Defines which elements will be taken off the scrolling structure of the plugin which is necessary when using the `css3` option to keep them fixed. It requires a string with the Javascript selectors for those elements. (For example: `fixedElements: '#element1, .element2'`) -- `dragAndMove`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Enables or disables the dragging and flicking of sections and slides by using mouse or fingers. Requires fullpage.js >= 3.0.1. Possible values are: +### normalScrollElements + +(default `null`) [Demo](https://codepen.io/alvarotrigo/pen/RmVazM) If you want to avoid the auto scroll when scrolling over some elements, this is the option you need to use. (useful for maps, scrolling divs etc.) It requires a string with the Javascript selectors for those elements. (For example: `normalScrollElements: '#element1, .element2'`). This option should not be applied to any section/slide element itself. + +### bigSectionsDestination + +(default `null`) [Demo](https://codepen.io/alvarotrigo/pen/vYLdMrx) Defines how to scroll to a section which height is bigger than the viewport and when not using `scrollOverflow:true`. (Read [how to create smaller or bigger sections](https://github.com/alvarotrigo/fullPage.js#creating-smaller-or-bigger-sections)). By default fullPage.js scrolls to the top if you come from a section above the destination one and to the bottom if you come from a section below the destination one. Possible values are `top`, `bottom`, `null`. + +### keyboardScrolling + +(default `true`) Defines if the content can be navigated using the keyboard. + +### touchSensitivity + +(default `5`) Defines a percentage of the browsers window width/height, and how far a swipe must measure for navigating to the next section / slide + +### continuousVertical + +(default `false`) Defines whether scrolling down in the last section should scroll down to the first one and if scrolling up in the first section should scroll up to the last one. Not compatible with `loopTop`, `loopBottom` or any scroll bar present in the site (`scrollBar:true` or `autoScrolling:false`). + +### continuousHorizontal + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether sliding right in the last slide should slide right to the first one or not, and if scrolling left in the first slide should slide left to the last one or not. Not compatible with `loopHorizontal`. Requires fullpage.js >= 3.0.1. + +### scrollHorizontally + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether to slide horizontally within sliders by using the mouse wheel or trackpad. It can only be used when using: `autoScrolling:true`. Ideal for story telling. Requires fullpage.js >= 3.0.1. + +### interlockedSlides + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determines whether moving one horizontal slider will force the sliding of sliders in other section in the same direction. Possible values are `true`, `false` or an array with the interlocked sections. For example `[1,3,5]` starting by 1. Requires fullpage.js >= 3.0.1. + +### dragAndMove + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Enables or disables the dragging and flicking of sections and slides by using mouse or fingers. Requires fullpage.js >= 3.0.1. Possible values are: - `true`: enables the feature. - `false`: disables the feature. - `vertical`: enables the feature only vertically. @@ -466,89 +527,160 @@ It requires the file `vendors/easings.min.js` or [jQuery UI](https://jqueryui.co - `fingersonly`: enables the feature for touch devices only. - `mouseonly`: enables the feature for desktop devices only (mouse and trackpad). -- `offsetSections`: (default `false`)[Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Provides a way to use non full screen sections based on percentage. Ideal to show visitors there's more content in the site by showing part of the next or previous section. Requires fullPage.js >= 3.0.1. +### offsetSections + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Provides a way to use non full screen sections based on percentage. Ideal to show visitors there's more content in the site by showing part of the next or previous section. Requires fullPage.js >= 3.0.1. To define the percentage of each section the attribute `data-percentage` must be used. The centering of the section in the viewport can be determined by using a boolean value in the attribute `data-centered` (default to `true` if not specified). For example: - ``` html -
- ``` +``` html +
+``` + +### resetSliders + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to reset every slider after leaving its section. Requires fullpage.js >= 3.0.1. -- `resetSliders`: (default `false`). [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to reset every slider after leaving its section. Requires fullpage.js >= 3.0.1. +### fadingEffect -- `fadingEffect`: (default `false`). [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether to use a fading effect or not instead of the default scrolling one. Possible values are `true`, `false`, `sections`, `slides`. It can therefore be applied just vertically or horizontally, or to both at the time. It can only be used when using: `autoScrolling:true`. Requires fullpage.js >= 3.0.1. +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether to use a fading effect or not instead of the default scrolling one. Possible values are `true`, `false`, `sections`, `slides`. It can therefore be applied just vertically or horizontally, or to both at the time. It can only be used when using: `autoScrolling:true`. Requires fullpage.js >= 3.0.1. -- `animateAnchor`: (default `true`) Defines whether the load of the site when given an anchor (#) will scroll with animation to its destination or will directly load on the given section. +### animateAnchor -- `recordHistory`: (default `true`) Defines whether to push the state of the site to the browser's history. When set to `true` each section/slide of the site will act as a new page and the back and forward buttons of the browser will scroll the sections/slides to reach the previous or next state of the site. When set to `false`, the URL will keep changing but will have no effect on the browser's history. This option is automatically turned off when using `autoScrolling:false`. +(default `true`) Defines whether the load of the site when given an anchor (#) will scroll with animation to its destination or will directly load on the given section. -- `menu`: (default `false`) A selector can be used to specify the menu to link with the sections. This way the scrolling of the sections will activate the corresponding element in the menu using the class `active`. +### recordHistory + +(default `true`) Defines whether to push the state of the site to the browser's history. When set to `true` each section/slide of the site will act as a new page and the back and forward buttons of the browser will scroll the sections/slides to reach the previous or next state of the site. When set to `false`, the URL will keep changing but will have no effect on the browser's history. This option is automatically turned off when using `autoScrolling:false`. + +### menu + +(default `false`) A selector can be used to specify the menu to link with the sections. This way the scrolling of the sections will activate the corresponding element in the menu using the class `active`. This won't generate a menu but will just add the `active` class to the element in the given menu with the corresponding anchor links. In order to link the elements of the menu with the sections, an HTML 5 data-tag (`data-menuanchor`) will be needed to use with the same anchor links as used within the sections. Example: - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu: '#myMenu' - }); - ``` +```html + +``` +```javascript +new fullpage('#fullpage', { + anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], + menu: '#myMenu' +}); +``` + +**Note:** the menu element should be placed outside the fullpage wrapper in order to avoid problem when using `css3:true`. Otherwise it will be appended to the `body` by the plugin itself. + +### navigation + +(default `false`) If set to `true`, it will show a navigation bar made up of small circles. + +### navigationPosition + +(default `none`) It can be set to `left` or `right` and defines which position the navigation bar will be shown (if using one). + +### navigationTooltips + +(default []) Defines the tooltips to show for the navigation circles in case they are being used. Example: `navigationTooltips: ['firstSlide', 'secondSlide']`. You can also define them by using the attribute `data-tooltip` in each section if you prefer. + +### showActiveTooltip + +(default `false`) Shows a persistent tooltip for the actively viewed section in the vertical navigation. + +### slidesNavigation - **Note:** the menu element should be placed outside the fullpage wrapper in order to avoid problem when using `css3:true`. Otherwise it will be appended to the `body` by the plugin itself. +(default `false`) If set to `true` it will show a navigation bar made up of small circles for each landscape slider on the site. -- `navigation`: (default `false`) If set to `true`, it will show a navigation bar made up of small circles. +### slidesNavPosition -- `navigationPosition`: (default `none`) It can be set to `left` or `right` and defines which position the navigation bar will be shown (if using one). +(default `bottom`) Defines the position for the landscape navigation bar for sliders. Admits `top` and `bottom` as values. You may want to modify the CSS styles to determine the distance from the top or bottom as well as any other style such as color. -- `navigationTooltips`: (default []) Defines the tooltips to show for the navigation circles in case they are being used. Example: `navigationTooltips: ['firstSlide', 'secondSlide']`. You can also define them by using the attribute `data-tooltip` in each section if you prefer. +### scrollOverflow -- `showActiveTooltip`: (default `false`) Shows a persistent tooltip for the actively viewed section in the vertical navigation. +(default `true`) defines whether or not to create a scroll for the section/slide in case its content is bigger than the height of it. It requires the default value `scrollBar: false`. In order to prevent fullpage.js from creating the scrollbar in certain sections or slides use the class `fp-noscroll`. For example: `
` You can also prevent scrolloverflow from getting applied on responsive mode when using `fp-auto-height-responsive` in the section element. -- `slidesNavigation`: (default `false`) If set to `true` it will show a navigation bar made up of small circles for each landscape slider on the site. +### scrollOverflowReset -- `slidesNavPosition`: (default `bottom`) Defines the position for the landscape navigation bar for sliders. Admits `top` and `bottom` as values. You may want to modify the CSS styles to determine the distance from the top or bottom as well as any other style such as color. +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Possible values are `true`, `false`, `sections`, `slides`. When set to `true` it scrolls up the content of the section/slide with a scroll bar when leaving to another section/slide. This way the section/slide will always show the start of its content even when scrolling from a section underneath it. Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `scrollOverflow`: (default `true`) defines whether or not to create a scroll for the section/slide in case its content is bigger than the height of it. It requires the default value `scrollBar: false`. In order to prevent fullpage.js from creating the scrollbar in certain sections or slides use the class `fp-noscroll`. For example: `
` You can also prevent scrolloverflow from getting applied on responsive mode when using `fp-auto-height-responsive` in the section element. +### scrollOverflowMacStyle -- `scrollOverflowReset`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Possible values are `true`, `false`, `sections`, `slides`. When set to `true` it scrolls up the content of the section/slide with a scroll bar when leaving to another section/slide. This way the section/slide will always show the start of its content even when scrolling from a section underneath it. Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +(default `false`) When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. +### sectionSelector -- `sectionSelector`: (default `.section`) Defines the Javascript selector used for the plugin sections. It might need to be changed sometimes to avoid problem with other plugins using the same selectors as fullpage.js. +(default `.section`) Defines the Javascript selector used for the plugin sections. It might need to be changed sometimes to avoid problem with other plugins using the same selectors as fullpage.js. -- `slideSelector`: (default `.slide`) Defines the Javascript selector used for the plugin slides. It might need to be changed sometimes to avoid problem with other plugins using the same selectors as fullpage.js. +### slideSelector -- `responsiveWidth`: (default `0`) A normal scroll (`autoScrolling:false`) will be used under the defined width in pixels. A class `fp-responsive` is added to the body tag in case the user wants to use it for their own responsive CSS. For example, if set to 900, whenever the browser's width is less than 900 the plugin will scroll like a normal site. +(default `.slide`) Defines the Javascript selector used for the plugin slides. It might need to be changed sometimes to avoid problem with other plugins using the same selectors as fullpage.js. -- `responsiveHeight`: (default `0`) A normal scroll (`autoScrolling:false`) will be used under the defined height in pixels. A class `fp-responsive` is added to the body tag in case the user wants to use it for their own responsive CSS. For example, if set to 900, whenever the browser's height is less than 900 the plugin will scroll like a normal site. +### responsiveWidth -- `responsiveSlides`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). When set to `true` slides will be turned into vertical sections when responsive mode is fired. (by using the `responsiveWidth` or `responsiveHeight` options detailed above). Requires fullpage.js >= 3.0.1. +(default `0`) A normal scroll (`autoScrolling:false`) will be used under the defined width in pixels. A class `fp-responsive` is added to the body tag in case the user wants to use it for their own responsive CSS. For example, if set to 900, whenever the browser's width is less than 900 the plugin will scroll like a normal site. -- `parallax`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the parallax backgrounds effects on sections / slides. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). +### responsiveHeight -- `parallaxOptions`: (default: `{ type: 'reveal', percentage: 62, property: 'translate'}`). Allows to configure the parameters for the parallax backgrounds effect when using the option `parallax:true`. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). +(default `0`) A normal scroll (`autoScrolling:false`) will be used under the defined height in pixels. A class `fp-responsive` is added to the body tag in case the user wants to use it for their own responsive CSS. For example, if set to 900, whenever the browser's height is less than 900 the plugin will scroll like a normal site. -- `dropEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### responsiveSlides -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). When set to `true` slides will be turned into vertical sections when responsive mode is fired. (by using the `responsiveWidth` or `responsiveHeight` options detailed above). Requires fullpage.js >= 3.0.1. -- `waterEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### parallax -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the parallax backgrounds effects on sections / slides. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). -- `cards`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### parallaxOptions -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +(default: `{ type: 'reveal', percentage: 62, property: 'translate'}`). -- `lazyLoading`: (default `true`) Lazy loading is active by default which means it will lazy load any media element containing the attribute `data-src` as detailed in the [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js#lazy-loading) . If you want to use any other lazy loading library you can disable this fullpage.js feature. +Allows to configure the parameters for the parallax backgrounds effect when using the option `parallax:true`. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. +### dropEffect -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). + +### dropEffectOptions + +(default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). + +Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). + +### waterEffect + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). + +### waterEffectOptions + +(default: `{ animateContent: true, animateOnMouseMove: true}`). + +Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). + +### cards + +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). + +### cardsOptions + +(default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). + +Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). + +### lazyLoading + +(default `true`) Lazy loading is active by default which means it will lazy load any media element containing the attribute `data-src` as detailed in the [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js#lazy-loading) . If you want to use any other lazy loading library you can disable this fullpage.js feature. + +### observer + +(default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. + +### credits + +(default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. ## Methods You can see them in action [here](https://alvarotrigo.com/fullPage/examples/methods.html) @@ -1064,13 +1196,10 @@ Want to build fullpage.js distribution files? Please see [Build Tasks](https://g ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1091,3 +1220,9 @@ Become a sponsor and get your logo on our README on Github with a link to your s + +## Contributors + + + + \ No newline at end of file diff --git a/dist/fullpage.css b/dist/fullpage.css index 53ee6f6bb..3115cb06a 100644 --- a/dist/fullpage.css +++ b/dist/fullpage.css @@ -1,5 +1,5 @@ /*! - * fullPage 4.0.22 + * fullPage 4.0.23 * https://github.com/alvarotrigo/fullPage.js * * @license GPLv3 for open source use only @@ -255,7 +255,8 @@ html.fp-enabled, } .fp-responsive .fp-auto-height-responsive.fp-section, -.fp-responsive .fp-auto-height-responsive .fp-slide{ +.fp-responsive .fp-auto-height-responsive .fp-slide, +.fp-responsive .fp-auto-height-responsive .fp-overflow{ height: auto !important; min-height: auto !important; } diff --git a/dist/fullpage.extensions.min.js b/dist/fullpage.extensions.min.js index d2518bd7c..f47200e67 100644 --- a/dist/fullpage.extensions.min.js +++ b/dist/fullpage.extensions.min.js @@ -1,5 +1,5 @@ /*! -* fullPage 4.0.22 +* fullPage 4.0.23 * https://github.com/alvarotrigo/fullPage.js * * @license GPLv3 for open source use only @@ -8,4 +8,4 @@ * * Copyright (C) 2018 http://alvarotrigo.com/fullPage/ - A project by Alvaro Trigo */ -!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).fullpage=t()}(this,(function(){"use strict";var n,t,e,i,r=Object.freeze({__proto__:null,get showError(){return ge},get isVisible(){return me},get getVisible(){return we},get $(){return be},get deepExtend(){return Se},get hasClass(){return ye},get getWindowHeight(){return Me},get t(){return Te},get css(){return Ae},get prev(){return xe},get next(){return Oe},get last(){return ke},get index(){return Ee},get getList(){return Re},get hide(){return je},get show(){return Le},get isArrayOrList(){return ze},get addClass(){return De},get removeClass(){return Ne},get appendTo(){return Pe},get wrap(){return He},get wrapAll(){return Ce},get wrapInner(){return Ie},get unwrap(){return We},get closest(){return Fe},get after(){return Ve},get before(){return Ze},get insertBefore(){return Be},get getScrollTop(){return Ge},get siblings(){return Ye},get preventDefault(){return Ue},get i(){return Xe},get o(){return _e},get u(){return Qe},get l(){return Je},get v(){return Ke},get isFunction(){return qe},get trigger(){return $e},get matches(){return ni},get toggle(){return ti},get createElementFromHTML(){return ei},get remove(){return ii},get filter(){return ri},get untilAll(){return oi},get nextAll(){return ai},get prevAll(){return ui},get toArray(){return li},get p(){return ci},get h(){return si},get g(){return fi},get S(){return di},get M(){return vi}});Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(n){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),e=t.length>>>0;if("function"!=typeof n)throw new TypeError("predicate must be a function");for(var i=arguments[1],r=0;r0?1:-1)*Math.floor(Math.abs(t)):t}(n);return Math.min(Math.max(t,0),e)},function(n){var e=this,r=Object(n);if(null==n)throw new TypeError("Array.from requires an array-like object - not null or undefined");var o,a=arguments.length>1?arguments[1]:void 0;if(void 0!==a){if(!t(a))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(o=arguments[2])}for(var u,l=i(r.length),c=t(e)?Object(new e(l)):new Array(l),s=0;s0||navigator.maxTouchPoints,s=!!window.MSInputMethodContext&&!!document.documentMode,f={test:{},shared:{}};o.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=function(n,t){t=t||window;for(var e=0;e
','
'],controlArrowColor:"#fff",verticalCentered:!0,sectionsColor:[],paddingTop:0,paddingBottom:0,fixedElements:null,responsive:0,responsiveWidth:0,responsiveHeight:0,responsiveSlides:!1,parallax:!1,parallaxOptions:{type:"reveal",percentage:62,property:"translate"},cards:!1,cardsOptions:{perspective:100,fadeContent:!0,fadeBackground:!0},sectionSelector:".section",slideSelector:".slide",afterLoad:null,beforeLeave:null,onLeave:null,afterRender:null,afterResize:null,afterReBuild:null,afterSlideLoad:null,onSlideLeave:null,afterResponsive:null,onScrollOverflow:null,lazyLoading:!0,observer:!0},G=null,Y=!1,U=Se({},B),X=null;function _(n){return G}function Q(){return X||B}function J(){return U}function K(n,t,e){X[n]=t,"internal"!==e&&(U[n]=t)}function q(){if(!Q().anchors.length){var n=be(Q().sectionSelector.split(",").join("[data-anchor],")+"[data-anchor]",G);n.length&&n.length===be(Q().sectionSelector,G).length&&(Y=!0,n.forEach((function(n){Q().anchors.push(Xe(n,"data-anchor").toString())})))}if(!Q().navigationTooltips.length){var t=be(Q().sectionSelector.split(",").join("[data-tooltip],")+"[data-tooltip]",G);t.length&&t.forEach((function(n){Q().navigationTooltips.push(Xe(n,"data-tooltip").toString())}))}}var $={O:0,R:0,slides:[],j:[],L:null,D:null,N:!1,P:!1,H:!1,C:!1,I:!1,W:void 0,F:void 0,V:!1,canScroll:!0,Z:"none",B:"none",G:!1,Y:!1,U:!0,X:0,_:Me(),J:!1,K:{}};function nn(n){Object.assign($,n)}function tn(){return $}function en(n){return void 0!==window["fp_"+n+"Extension"]}function rn(n){var t=Q();return null!==t[n]&&"[object Array]"===Object.prototype.toString.call(t[n])?t[n].length&&f[n]:t[n]&&f[n]}function on(n,t,e){if(rn(n))return qe(f[n][t])?f[n][t](e):f[n][t]}function an(){return on("dragAndMove","isAnimating")}function un(){return on("dragAndMove","isGrabbing")}function ln(n){if(Q().offsetSections&&f.offsetSections){var t=on("offsetSections","getWindowHeight",n);return""!==t?Math.round(t)+"px":t}return Me()+"px"}function cn(n,t){n.insertBefore(t,n.firstChild)}function sn(n){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function e(n){var e,i,r,o,a,u,l="",c=0;for(n=n.replace(/[^A-Za-z0-9+/=]/g,"");c>4,i=(15&o)<<4|(a=t.indexOf(n.charAt(c++)))>>2,r=(3&a)<<6|(u=t.indexOf(n.charAt(c++))),l+=String.fromCharCode(e),64!=a&&(l+=String.fromCharCode(i)),64!=u&&(l+=String.fromCharCode(r));return l=function(n){for(var t,e="",i=0,r=0,o=0;i191&&r<224?(o=n.charCodeAt(i+1),e+=String.fromCharCode((31&r)<<6|63&o),i+=2):(o=n.charCodeAt(i+1),t=n.charCodeAt(i+2),e+=String.fromCharCode((15&r)<<12|(63&o)<<6|63&t),i+=3);return e}(l),l}function i(n){return n.slice(3).slice(0,-3)}return function(n){var t=n.split("_");if(t.length>1){var r=t[1];return e(n.replace(i(t[1]),"").split("_")[0].slice(2).slice(0,-2))+"_"+e(r.slice(3).slice(0,-3))}return i(n)}(e(n))}o.state=$,o.fp_utils=o.fp_utils||{},Object.assign(o.fp_utils,{prependTo:cn,toggleClass:function(n,t,e){if(n.classList&&null==e)n.classList.toggle(t);else{var i=ye(n,t);i&&null==e||!e?Ne(n,t):(!i&&null==e||e)&&De(n,t)}}});var fn=function(n){this.anchor=n.anchor,this.item=n.item,this.index=n.index(),this.isLast=this.index===n.item.parentElement.querySelectorAll(n.selector).length-1,this.isFirst=!this.index,this.isActive=n.isActive},dn=function(n,t){this.parent=this.parent||null,this.selector=t,this.anchor=Xe(n,"data-anchor")||Q().anchors[Ee(n,Q().sectionSelector)],this.item=n,this.isVisible=me(n),this.isActive=ye(n,w),this.q=ye(n,D)||null!=be(N,n)[0],this.nn=t===Q().sectionSelector,this.container=Fe(n,L)||Fe(n,v),this.index=function(){return this.siblings().indexOf(this)}};function vn(n){return n.map((function(n){return n.item}))}function pn(n,t){return n.find((function(n){return n.item===t}))}dn.prototype.siblings=function(){return this.nn?this.isVisible?$.j:$.tn:this.parent?this.parent.slides:0},dn.prototype.prev=function(){var n=this.siblings(),t=(this.nn?n.indexOf(this):this.parent.slides.indexOf(this))-1;return t>=0?n[t]:null},dn.prototype.next=function(){var n=this.siblings(),t=(this.nn?n.indexOf(this):this.parent.slides.indexOf(this))+1;return ti?"up":"down"}function An(n){return De(n,h)}function xn(n){return{"-webkit-transform":n,"-moz-transform":n,"-ms-transform":n,transform:n}}function On(n,t){t?Mn(_()):An(_()),clearTimeout(hn),Ae(_(),xn(n)),f.test.on=n,hn=setTimeout((function(){Ne(_(),h)}),10)}function kn(n){var t=Math.round(n);if(Q().css3&&Q().autoScrolling&&!Q().scrollBar)On("translate3d(0px, -"+t+"px, 0px)",!1);else if(Q().autoScrolling&&!Q().scrollBar)Ae(_(),{top:-t+"px"}),f.test.top=-t+"px";else{var e=Sn(t);yn(e.element,e.options)}}function En(n,t){"internal"!==t&&on("fadingEffect","update",n),on("cards","update_",n),K("scrollingSpeed",n,t)}f.setScrollingSpeed=En;var Rn,jn=null,Ln=null,zn=null;function Dn(n,t,e,i){var r,a=function(n){return n.self!=o&&ye(n,E)?n.scrollLeft:!Q().autoScrolling||Q().scrollBar?Ge():n.offsetTop}(n),u=t-a,l=!1,c=$.V;nn({V:!0}),Rn&&window.cancelAnimationFrame(Rn),Rn=function(s){r||(r=s);var f=Math.floor(s-r);if($.V){var d=t;e&&(d=o.fp_easings[Q().easing](f,a,u,e)),f<=e&&yn(n,d),f-1&&this.an[n].splice(e,1)}},ln:function(n){for(var t=this,e=arguments.length,i=new Array(e>1?e-1:0),r=1;rt?"left":"right"}function Tt(){clearTimeout(vt)}function At(n){on("continuousHorizontal","afterSlideLoads",n),on("dragAndMove","afterSlideLoads",n),n.localIsResizing||(on("parallax","afterSlideLoads"),on("scrollOverflowReset","setPrevious",n.prevSlide),on("scrollOverflowReset","reset"),qe(Q().afterSlideLoad)&&Ht("afterSlideLoad",n),nn({canScroll:!0}),Nn(n.destiny),Bn.ln(st,n)),nn({H:!1}),on("interlockedSlides","interlockedSlides",n)}function xt(n,t){En(0,"internal"),void 0!==t&&nn({C:!0}),St(Fe(n,R),n),void 0!==t&&nn({C:!1}),En(J().scrollingSpeed,"internal")}pt.m={up:!0,down:!0,left:!0,right:!0},pt.k=Se({},pt.m),Bn.un(Un,(function(n){var t=n.target;(ni(t,W)||Fe(t,W))&&mt.call(t,n)})),f.landscapeScroll=St,Bn.un(Jn,(function(){Bn.un(at,bt)}));var Ot=null,kt=null;function Et(){$.L=null,$.j.map((function(n){var t=ye(n.item,w);n.isActive=t,n.q=he.q(n.item),t&&($.L=n),n.slides.length&&(n.activeSlide=null,n.slides.map((function(t){var e=ye(t.item,w);t.q=he.q(n.item),t.isActive=e,e&&(n.activeSlide=t)})))})),function(){var n=$.L,t=!!$.L&&$.L.slides.length,e=$.L?$.L.activeSlide:null;if(!n&&$.j.length&&!tn().N){if(Ot){var i=Lt(Ot,$.j);i&&($.L=i,$.L.isActive=!0,De($.L.item,w)),$.L&&kn($.L.item.offsetTop)}if(t&&!e&&kt){var r=Lt(kt,$.L.slides);r&&($.L.activeSlide=r,$.L.activeSlide.isActive=!0,De($.L.activeSlide.item,w)),$.L.activeSlide&&xt($.L.activeSlide.item,"internal")}}}(),$e(_(),"onUpdateStateDone")}function Rt(){var n=be(Q().sectionSelector+", "+M,_()),t=we(n),e=Array.from(n).map((function(n){return new zt(n)})),i=e.filter((function(n){return n.isVisible})),r=i.reduce((function(n,t){return n.concat(t.slides)}),[]);Ot=jt($.L),kt=jt($.L?$.L.activeSlide:null),$.O=t.length,$.R=i.reduce((function(n,t){return n+t.slides.length}),0),$.j=i,$.tn=e,$.slides=r,$.rn=$.j.concat($.slides)}function jt(n){if(!n)return null;var t=n?n.item:null,e=n.nn?$.tn:$.L.dn;if(t){var i=pn(e,t);return i?i.index():null}return null}function Lt(n,t){var e,i=n-1,r=n;do{if(e=t[i]||t[r])break;i-=1,r+=1}while(i>=0||r0,o=i>2&&i<$._,(r||o)&&Cn(n)}))}function Vt(){$e(xe(this),"click")}function Zt(){ii(be(A));var n=a.createElement("div");n.setAttribute("id","fp-nav");var t=a.createElement("ul");n.appendChild(t),Pe(n,jn);var e=be(A)[0];De(e,"fp-"+Q().navigationPosition),Q().showActiveTooltip&&De(e,"fp-show-active");for(var i="",r=0;r'+Gn(o.index(),"Section")+"";var l=Q().navigationTooltips[o.index()];void 0!==l&&""!==l&&(i+='
'+l+"
"),i+=""}be("ul",e)[0].innerHTML=i;var c=be("li",be(A)[0])[tn().L.index()];De(be("a",c),w)}function Bt(n){n.preventDefault&&Ue(n),nn({D:"verticalNav"});var t=Ee(Fe(this,"#fp-nav li"));Bn.ln(it,{destination:tn().j[t]})}function Gt(n,t){var e;e=n,Q().menu&&Q().menu.length&&be(Q().menu).forEach((function(n){null!=n&&(Ne(be(b,n),w),De(be('[data-menuanchor="'+e+'"]',n),w))})),function(n,t){var e=be(A)[0];Q().navigation&&null!=e&&"none"!==e.style.display&&(Ne(be(b,e),w),De(n?be('a[href="#'+n+'"]',e):be("a",be("li",e)[t]),w))}(n,t)}Dt.prototype=dn.prototype,Dt.prototype.constructor=zt,f.setRecordHistory=Ct,f.setAutoScrolling=It,f.test.setAutoScrolling=It,(new Date).getTime();var Yt,Ut,Xt,_t,Qt,Jt,Kt=(Ut=!0,Xt=(new Date).getTime(),_t=!o.fullpage_api,function(n,t){var e=(new Date).getTime(),i="wheel"===n?Q().scrollingSpeed:100;return Ut=_t||e-Xt>=i,_t=!o.fullpage_api,Ut&&(Yt=t(),Xt=e),void 0===Yt||Yt});function qt(n,t){if(qe(Q().beforeLeave))return Kt(tn().D,(function(){return Ht(n,t)}))}function $t(n,t,e){var i=n.item;if(null!=i){var r,o,a={element:i,callback:t,isMovementUp:e,dtop:ne(i),yMovement:Tn(tn().L,i),anchorLink:n.anchor,sectionIndex:n.index(),activeSlide:n.activeSlide?n.activeSlide.item:null,leavingSection:tn().L.index()+1,localIsResizing:$.C,items:{origin:tn().L,destination:n},direction:null};if(!(tn().L.item==i&&!$.C||Q().scrollBar&&Ge()===a.dtop&&!ye(i,"fp-auto-height"))){if(null!=a.activeSlide&&(r=Xe(a.activeSlide,"data-anchor"),o=Ee(a.activeSlide,null)),!a.localIsResizing){var u=a.yMovement;if(void 0!==e&&(u=e?"up":"down"),a.direction=u,en("dropEffect")&&f.dropEffect.onLeave_(a),en("waterEffect")&&f.waterEffect.onLeave_(a),qe(Q().beforeLeave)&&!1===qt("beforeLeave",a))return;if(qe(Q().onLeave)&&!Ht("onLeave",a))return}on("parallax","apply",a),on("cards","apply",a),on("dropEffect","apply",a),on("waterEffect","apply",a),Q().autoScrolling&&Q().continuousVertical&&void 0!==a.isMovementUp&&(!a.isMovementUp&&"up"==a.yMovement||a.isMovementUp&&"down"==a.yMovement)&&(a=function(n){nn({J:!0});var t=tn().L.item;return n.isMovementUp?Ze(t,ai(t,M)):Ve(t,ui(t,M).reverse()),kn(tn().L.item.offsetTop),Wt(),n.hn=t,n.dtop=n.element.offsetTop,n.yMovement=Tn(tn().L,n.element),n.leavingSection=n.items.origin.index()+1,n.sectionIndex=n.items.destination.index(),$e(_(),"onContinuousVertical",n),n}(a)),on("scrollOverflowReset","setPrevious",tn().L.item),a.localIsResizing||Hn(tn().L.item),rn("dropEffect")&&Q().dropEffect||(De(i,w),Ne(Ye(i),w)),Et(),Cn(i),nn({canScroll:f.test.gn}),Fn(o,r,a.anchorLink),Bn.ln(lt,a),function(n){var t=Q().scrollingSpeed<700,e=t?700:Q().scrollingSpeed;if(nn({Z:"none",scrollY:Math.round(n.dtop)}),Bn.ln(at),Q().css3&&Q().autoScrolling&&!Q().scrollBar)On("translate3d(0px, -"+Math.round(n.dtop)+"px, 0px)",!0),rn("waterEffect")&&Wt(),Q().scrollingSpeed?(clearTimeout(Qt),Qt=setTimeout((function(){te(n),nn({canScroll:!t||f.test.gn})}),Q().scrollingSpeed)):te(n);else{var i=Sn(n.dtop);f.test.top=-n.dtop+"px",clearTimeout(Qt),Dn(i.element,i.options,Q().scrollingSpeed,(function(){Q().scrollBar?Qt=setTimeout((function(){te(n)}),30):(te(n),nn({canScroll:!t||f.test.gn}))}))}t&&(clearTimeout(Jt),Jt=setTimeout((function(){nn({canScroll:!0})}),e))}(a),nn({W:a.anchorLink}),Gt(a.anchorLink,function(n){return null!=n.hn?n.isMovementUp?$.O-1:0:n.sectionIndex}(a))}}}function ne(n){var t=n.offsetHeight,e=n.offsetTop,i=e,r=rn("dragAndMove")&&on("dragAndMove","isGrabbing")?on("dragAndMove","isScrollingDown"):e>$.X,o=i-Me()+t,a=Q().bigSectionsDestination;return t>Me()?(r||a)&&"bottom"!==a||(i=o):(r||$.C&&null==Oe(n))&&(i=o),rn("offsetSections")&&(i=f.offsetSections.getSectionPosition_(r,i,n)),nn({X:i}),i}function te(n){nn({N:!1}),function(n){null!=n.hn&&(n.isMovementUp?Ze(be(M)[0],n.hn):Ve(be(M)[tn().j.length-1],n.hn),kn(tn().L.item.offsetTop),function(){for(var n=be(k),t=0;t-1&&!he.An)return Ue(n),!1},yn:function(){he.Tn=$.canScroll},onLeave:function(){clearTimeout(le),he.An=!1},afterLoad:function(){he.An=!1,clearTimeout(le),le=setTimeout((function(){he.Tn=$.canScroll}),200)},Rn:function(){a.activeElement===this.Mn&&(this.Mn.blur(),he.An=!1)},Sn:function(){if(Q().scrollOverflow&&he.Tn){he.Rn();var n=he.jn(tn().L.item);!n||u||c||(this.Mn=n,requestAnimationFrame((function(){n.focus(),he.An=!0}))),he.Tn=!1}},bn:function(){Q().scrollOverflowMacStyle&&!l&&De(jn,"fp-scroll-mac"),tn().rn.forEach((function(n){if(!(n.slides&&n.slides.length||ye(n.item,"fp-auto-height-responsive")&&ae())){var t,e=wn(n.item),i=he.mn(n.item),o=(t=n).nn?t:t.parent;if(s){var a=i?"addClass":"removeClass";r[a](o.item,P),r[a](n.item,P)}else De(o.item,P),De(n.item,P);n.q||(he.Ln(e),he.zn(e)),n.q=!0}}))},zn:function(n){he.jn(n).addEventListener("scroll",he.Dn),n.addEventListener("wheel",he.kn,{passive:!1}),n.addEventListener("keydown",he.En,{passive:!1})},Ln:function(n){var t=document.createElement("div");t.className=D,Ie(n,t),t.setAttribute("tabindex","-1")},Nn:function(n){var t=be(N,n)[0];t&&(We(t),n.removeAttribute("tabindex"))},jn:function(n){var t=wn(n);return be(N,t)[0]||t},q:function(n){return ye(n,D)||null!=be(N,n)[0]},wn:function(n){return n.nn&&n.activeSlide?n.activeSlide.q:n.q},mn:function(n){return he.jn(n).scrollHeight>o.innerHeight},isScrolled:function(n,t){if(!$.canScroll)return!1;if(Q().scrollBar)return!0;var e=he.jn(t);if(!Q().scrollOverflow||!ye(e,D)||ye(t,"fp-noscroll")||ye(wn(t),"fp-noscroll"))return!0;var i=s?1:0,r=e.scrollTop,o="up"===n&&r<=0,a="down"===n&&e.scrollHeight<=Math.ceil(e.offsetHeight+r)+i,u=o||a;return u||(this.xn=(new Date).getTime()),u},Pn:function(){this.On=(new Date).getTime();var n=this.On-he.xn,t=(u||c)&&$.G,e=$.Y&&n>600;return t&&n>400||e},Dn:(ve=0,function(n){var t=n.target.scrollTop,e="none"!==$.Z?$.Z:ve1?t:document)?t.querySelectorAll(n):null}function Se(n){n=n||{};for(var t=1,e=arguments.length;t1&&(Q().controlArrows&&function(n){var t=n.item,e=[ei(Q().controlArrowsHTML[0]),ei(Q().controlArrowsHTML[1])];Ve(be(R,t)[0],e),De(e,I),De(e[0],F),De(e[1],"fp-next"),"#fff"!==Q().controlArrowColor&&(Ae(be(Z,t),{"border-color":"transparent transparent transparent "+Q().controlArrowColor}),Ae(be(V,t),{"border-color":"transparent "+Q().controlArrowColor+" transparent transparent"})),Q().loopHorizontal||je(be(V,t))}(n),Q().slidesNavigation&&function(n){var t=n.item,e=n.slides.length;Pe(ei('
    '),t);var i=be(H,t)[0];De(i,"fp-"+Q().slidesNavPosition);for(var r=0;r'+Gn(r,"Slide",be(O,t)[r])+""),be("ul",i)[0]);Ae(i,{"margin-left":"-"+i.innerWidth/2+"px"});var o=n.activeSlide?n.activeSlide.index():0;De(be("a",be("li",i)[o]),w)}(n)),i.forEach((function(n){Ae(n.item,{width:o+"%"}),Q().verticalCentered&&ue(n)}));var c=rn("responsiveSlides")?null:n.activeSlide||null;null!=c&&$.L&&(0!==$.L.index()||0===$.L.index()&&0!==c.index())?(xt(c.item,"internal"),De(c.item,"fp-initial")):De(e[0],w)}window.fp_utils=Object.assign(o.fp_utils||{},{$:be,deepExtend:Se,hasClass:ye,getWindowHeight:Me,css:Ae,prev:xe,next:Oe,last:ke,index:Ee,getList:Re,hide:je,show:Le,isArrayOrList:ze,addClass:De,removeClass:Ne,appendTo:Pe,wrap:He,wrapAll:Ce,wrapInner:Ie,unwrap:We,closest:Fe,after:Ve,before:Ze,insertBefore:Be,getScrollTop:Ge,siblings:Ye,preventDefault:Ue,isFunction:qe,trigger:$e,matches:ni,toggle:ti,createElementFromHTML:ei,remove:ii,filter:ri,untilAll:oi,nextAll:ai,prevAll:ui,showError:ge,scrollOverflowHandler:he}),Bn.un(Jn,(function(){["click","touchstart"].forEach((function(n){_e(n,pi,{passive:!1})})),Qe("focus",gi),Bn.un(Kn,hi)}));var bi={attributes:!1,subtree:!0,childList:!0,characterData:!0};function Si(){return on("responsiveSlides","isResponsiveSlidesChanging")||we(be(Q().slideSelector,_())).length!==tn().R}function yi(n){var t=Si();(Si()||on("responsiveSlides","isResponsiveSlidesChanging")||we(be(Q().sectionSelector,_())).length!==tn().O)&&!$.J&&(Q().observer&&pe&&pe.disconnect(),Rt(),Et(),Q().anchors=[],ii(be(A)),on("responsiveSlides","isResponsiveSlidesChanging")||mi(),q(),Q().navigation&&Zt(),t&&(ii(be(H)),ii(be(W))),tn().j.forEach((function(n){n.slides.length?t&&wi(n):se(n)}))),Q().observer&&pe&&be(v)[0]&&pe.observe(be(v)[0],bi)}Bn.un(Jn,(function(){var n,t,e;Q().observer&&"MutationObserver"in window&&be(v)[0]&&(n=be(v)[0],t=bi,(e=new MutationObserver(yi)).observe(n,t),pe=e),Bn.un(qn,yi)})),f.render=yi;var Mi=function(){var n=!1;try{var t=Object.defineProperty({},"passive",{get:function(){n=!0}});Qe("testPassive",null,t),Ke("testPassive",null,t)}catch(n){}return function(){return n}}();function Ti(){return!!Mi()&&{passive:!1}}var Ai,xi,Oi,ki,Ei=(Oi=(new Date).getTime(),ki=[],{Cn:function(n){var t=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,e=Math.max(-1,Math.min(1,t)),i=void 0!==n.wheelDeltaX||void 0!==n.deltaX;Ai=Math.abs(n.wheelDeltaX)149&&ki.shift(),ki.push(Math.abs(t));var a=r-Oi;Oi=r,a>200&&(ki=[])},In:function(){var n=si(ki,10)>=si(ki,70);return!!ki.length&&n&&Ai},Wn:function(){return xi}});function Ri(){var n=Q().css3?Ge()+Me():ci(tn().j).item.offsetTop+ci(tn().j).item.offsetHeight,t=Sn(n);f.test.top=-n+"px",nn({canScroll:!1}),Dn(t.element,t.options,Q().scrollingSpeed,(function(){setTimeout((function(){nn({N:!0}),nn({canScroll:!0})}),30)}))}function ji(){_().getBoundingClientRect().bottom>=0&&Li()}function Li(){var n=Sn(ci(tn().j).item.offsetTop);nn({canScroll:!1}),Dn(n.element,n.options,Q().scrollingSpeed,(function(){nn({canScroll:!0}),nn({N:!1}),nn({Fn:!1})}))}var zi,Di,Ni,Pi=(zi=!1,Di={},Ni={},function(n,t,e){switch(n){case"set":Di[t]=(new Date).getTime(),Ni[t]=e;break;case"isNewKeyframe":var i=(new Date).getTime();zi=i-Di[t]>Ni[t]}return zi});function Hi(){var n=tn().L.next();n||!Q().loopBottom&&!Q().continuousVertical||(n=tn().j[0]),null!=n?$t(n,null,!1):_().scrollHeightIi&>().m.down&&Hi()),Ii=n.pageY)}function Fi(n){if(gt().m[n]){var t="down"===n?Hi:Ci;rn("scrollHorizontally")&&(t=on("scrollHorizontally","getScrollSection",{type:n,scrollSection:t})),Q().scrollOverflow&&he.wn(tn().L)?he.isScrolled(n,tn().L.item)&&he.Pn()&&t():t()}}var Vi,Zi,Bi,Gi=0,Yi=0,Ui=0,Xi=0,_i=tr(),Qi={Zn:"ontouchmove"in window?"touchmove":_i?_i.move:null,Bn:"ontouchstart"in window?"touchstart":_i?_i.down:null};function Ji(n){var t=Fe(n.target,M)||tn().L.item,e=he.wn(tn().L);if(Ki(n)){nn({G:!0,Y:!1}),Q().autoScrolling&&(e&&!$.canScroll||Q().scrollBar)&&Ue(n);var i=nr(n);Ui=i.y,Xi=i.x;var r=Math.abs(Gi-Ui)>o.innerHeight/100*Q().touchSensitivity,a=Math.abs(Yi-Xi)>Te()/100*Q().touchSensitivity,u=be(R,t).length&&Math.abs(Yi-Xi)>Math.abs(Gi-Ui),l=Gi>Ui?"down":"up";nn({Z:u?Yi>Xi?"right":"left":l}),u?!$.H&&a&&(Yi>Xi?gt().m.right&&Bn.ln(_n,{section:t}):gt().m.left&&Bn.ln(Xn,{section:t})):Q().autoScrolling&&$.canScroll&&r&&Fi(l)}}function Ki(n){return void 0===n.pointerType||"mouse"!=n.pointerType}function qi(n){if(Q().fitToSection&&nn({V:!1}),Ki(n)){var t=nr(n);Gi=t.y,Yi=t.x}Qe("touchend",$i)}function $i(){Ke("touchend",$i),nn({G:!1})}function nr(n){var t={};return t.y=void 0!==n.pageY&&(n.pageY||n.pageX)?n.pageY:n.touches[0].pageY,t.x=void 0!==n.pageX&&(n.pageY||n.pageX)?n.pageX:n.touches[0].pageX,c&&Ki(n)&&Q().scrollBar&&void 0!==n.touches&&(t.y=n.touches[0].pageY,t.x=n.touches[0].pageX),t}function tr(){var n;return o.PointerEvent&&(n={down:"pointerdown",move:"pointermove"}),n}function er(n){Q().autoScrolling&&Ki(n)&>().m.up&&($.canScroll||Ue(n))}function ir(n,t){var e=null==t?tn().L.item:t,i=pn($.j,e),r=be(R,e)[0];if(!(null==r||an()||$.H||i.slides.length<2)){var o=i.activeSlide,a="left"===n?o.prev():o.next();if(!a){if(!Q().loopHorizontal)return;a="left"===n?ci(i.slides):i.slides[0]}nn({H:!f.test.gn}),St(r,a.item,n)}}function rr(n){ir("left",n)}function or(n){ir("right",n)}function ar(n){var t=tn().j.filter((function(t){return t.anchor===n}))[0];if(!t){var e=void 0!==n?n-1:0;t=tn().j[e]}return t}function ur(n){null!=n&&St(Fe(n,R),n)}function lr(n,t){var e=ar(n);if(null!=e){var i=function(n,t){var e=t.slides.filter((function(t){return t.anchor===n}))[0];return null==e&&(n=void 0!==n?n:0,e=t.slides[n]),e?e.item:null}(t,e);e.anchor&&e.anchor===$.W||ye(e.item,w)?ur(i):$t(e,(function(){ur(i)}))}}function cr(n,t){var e=ar(n);void 0!==t?lr(n,t):null!=e&&$t(e)}function sr(){clearTimeout(Zi),Je("keydown",fr),Je("keyup",dr)}function fr(n){clearTimeout(Zi);var t=n.keyCode,e=[37,39].indexOf(t)>-1,i=Q().autoScrolling||Q().fitToSection||e;9===t?function(n){var t=n.shiftKey,e=a.activeElement,i=mr(wn(tn().L.item));function r(n){return Ue(n),i[0]?i[0].focus():null}if($.canScroll){if(!function(n){var t=mr(a),e=t.indexOf(a.activeElement),i=t[n.shiftKey?e-1:e+1],r=Fe(i,O),o=Fe(i,M);return!r&&!o}(n)){e?null==Fe(e,".fp-section.active,.fp-section.active .fp-slide.active")&&(e=r(n)):r(n);var o=e==i[0],u=e==i[i.length-1],l=t&&o;if(l||!t&&u){Ue(n);var c=function(n){var t,e=n?"prevPanel":"nextPanel",i=[],r=bn(($.L&&$.L.activeSlide?$.L.activeSlide:$.L)[e]());do{(i=mr(r.item)).length&&(t={Gn:r,Yn:i[n?i.length-1:0]}),r=bn(r[e]())}while(r&&0===i.length);return t}(l),s=c?c.Gn:null;if(s){var f=s.nn?s:s.parent;Bn.ln(nt,{Un:f.index()+1,slideAnchor:s.nn?0:s.index()}),Bi=c.Yn,Ue(n)}}}}else Ue(n)}(n):!vi()&&Q().keyboardScrolling&&i&&(Vi=n.ctrlKey,Zi=setTimeout((function(){!function(n){var t=n.shiftKey,e=a.activeElement,i=ni(e,"video")||ni(e,"audio"),r=he.isScrolled("up",tn().L.item),o=he.isScrolled("down",tn().L.item),u=[37,39].indexOf(n.keyCode)>-1;if(function(n){(function(n){return[40,38,32,33,34].indexOf(n.keyCode)>-1&&!$.N})(n)&&!Fe(n.target,N)&&n.preventDefault()}(n),$.canScroll||u)switch(nn({D:"keydown"}),n.keyCode){case 38:case 33:gt().k.up&&r?$.N?Bn.ln(tt,{e:n}):Ci():he.Sn();break;case 32:if(t&>().k.up&&!i&&r){Ci();break}case 40:case 34:if(gt().k.down&&o){if($.N)return;32===n.keyCode&&i||Hi()}else he.Sn();break;case 36:gt().k.up&&cr(1);break;case 35:gt().k.down&&cr(tn().j.length);break;case 37:gt().k.left&&rr();break;case 39:gt().k.right&&or()}}(n)}),0))}function dr(n){$.U&&(Vi=n.ctrlKey)}function vr(){nn({U:!1}),Vi=!1}function pr(n){gr()}function hr(n){Fe(Bi,O)&&!Fe(Bi,k)||gr()}function gr(){Bi&&(Bi.focus(),Bi=null)}function mr(n){return[].slice.call(be('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], summary:not([disabled]), [contenteditable]',n)).filter((function(n){return"-1"!==Xe(n,"tabindex")&&null!==n.offsetParent}))}f.moveSlideLeft=rr,f.moveSlideRight=or,f.moveTo=cr,Bn.un(Jn,(function(){Qe("blur",vr),_e("keydown",fr),_e("keyup",dr),Bn.un(Kn,sr),Bn.un(st,pr),Bn.un(ct,hr)}));var wr=(new Date).getTime(),br=[];function Sr(n){n?(function(){var n,t="";o.addEventListener?n="addEventListener":(n="attachEvent",t="on");var e="onwheel"in a.createElement("div")?"wheel":void 0!==a.onmousewheel?"mousewheel":"DOMMouseScroll",i=Ti();"DOMMouseScroll"==e?a[n](t+"MozMousePixelScroll",yr,i):a[n](t+e,yr,i)}(),_().addEventListener("mousedown",Mr),_().addEventListener("mouseup",Tr)):(a.addEventListener?(Je("mousewheel",yr,!1),Je("wheel",yr,!1),Je("MozMousePixelScroll",yr,!1)):a.detachEvent("onmousewheel",yr),_().removeEventListener("mousedown",Mr),_().removeEventListener("mouseup",Tr))}function yr(n){var t=(new Date).getTime(),e=ye(be(".fp-completely")[0],"fp-normal-scroll"),i=function(n,t){(new Date).getTime();var e=tn().N&&n.getBoundingClientRect().bottom>=0&&"up"===Ei.Wn(),i=tn().Fn;if(i)return Ue(t),!1;if(tn().N){if(e){var r;if(!(i||Pi("isNewKeyframe","beyondFullpage")&&Ei.In()))return(r=Sn(ci(tn().j).item.offsetTop+ci(tn().j).item.offsetHeight)).element.scrollTo(0,r.options),nn({Fn:!1}),Ue(t),!1;if(Ei.In())return e=!1,nn({Fn:!0}),nn({D:"wheel"}),Li(),Ue(t),!1}else Pi("set","beyondFullpage",1e3);if(!i&&!e)return!0}}(_(),n);if($.Y||nn({G:!1,Y:!0,Z:"none"}),!gt().m.down&&!gt().m.up)return Ue(n),!1;if(i)return!0;if(!1===i)return Ue(n),!1;if(Q().autoScrolling&&!Vi&&!e){var r=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,a=Math.max(-1,Math.min(1,r)),u=void 0!==n.wheelDeltaX||void 0!==n.deltaX,l=Math.abs(n.wheelDeltaX)0?"up":"none";br.length>149&&br.shift(),br.push(Math.abs(r)),Q().scrollBar&&Ue(n);var s=t-wr;return wr=t,s>200&&(br=[]),nn({B:c}),$.canScroll&&!an()&&si(br,10)>=si(br,70)&&l&&(nn({D:"wheel"}),Fi(a<0?"down":"up")),!1}Q().fitToSection&&nn({V:!1})}function Mr(n){var t;2==n.which&&(t=n.pageY,Ii=t,_().addEventListener("mousemove",Wi))}function Tr(n){2==n.which&&_().removeEventListener("mousemove",Wi)}function Ar(n){n?(Sr(!0),function(){if(Qi.Zn&&(u||c)&&(!rn("dragAndMove")||"mouseonly"===Q().dragAndMove)){Q().autoScrolling&&(jn.removeEventListener(Qi.Zn,er,{passive:!1}),jn.addEventListener(Qi.Zn,er,{passive:!1}));var n=Q().touchWrapper;n.removeEventListener(Qi.Bn,qi),n.removeEventListener(Qi.Zn,Ji,{passive:!1}),n.addEventListener(Qi.Bn,qi),n.addEventListener(Qi.Zn,Ji,{passive:!1})}}()):(Sr(!1),function(){if(Qi.Zn&&(u||c)){Q().autoScrolling&&(jn.removeEventListener(Qi.Zn,Ji,{passive:!1}),jn.removeEventListener(Qi.Zn,er,{passive:!1}));var n=Q().touchWrapper;n.removeEventListener(Qi.Bn,qi),n.removeEventListener(Qi.Zn,Ji,{passive:!1})}}())}f.setMouseWheelScrolling=Sr;var xr=!0;function Or(){["mouseenter","touchstart","mouseleave","touchend"].forEach((function(n){Je(n,Er,!0)}))}function kr(n,t){document["fp_"+n]=t,_e(n,Er,!0)}function Er(n){var t=n.type,e=!1,i="mouseleave"===t?n.toElement||n.relatedTarget:n.target;i!=document&&i?("touchend"===t&&(xr=!1,setTimeout((function(){xr=!0}),800)),("mouseenter"!==t||xr)&&(Q().normalScrollElements.split(",").forEach((function(n){if(!e){var t=ni(i,n),r=Fe(i,n);(t||r)&&(f.shared.Xn||Ar(!1),f.shared.Xn=!0,e=!0)}})),!e&&f.shared.Xn&&(Ar(!0),f.shared.Xn=!1))):Ar(!0)}function Rr(n,t){En(0,"internal"),cr(n,t),En(J().scrollingSpeed,"internal")}Bn.un(Jn,(function(){Q().normalScrollElements&&(["mouseenter","touchstart"].forEach((function(n){kr(n,!1)})),["mouseleave","touchend"].forEach((function(n){kr(n,!0)}))),Bn.un(Kn,Or)})),f.silentMoveTo=Rr;var jr,Lr,zr=Me(),Dr=Te(),Nr=!1;function Pr(){clearTimeout(jr),clearTimeout(Lr),Ke("resize",Hr)}function Hr(){Nr||(Q().autoScrolling&&!Q().scrollBar||!Q().fitToSection)&&Ir(Me()),function(){if(u)for(var n=0;n<4;n++)Lr=setTimeout((function(){window.requestAnimationFrame((function(){Q().autoScrolling&&!Q().scrollBar&&(nn({C:!0}),Rr($.L.index()+1),nn({C:!1}))}))}),200*n)}(),Nr=!0,clearTimeout(jr),jr=setTimeout((function(){!function(){if(nn({C:!0}),Ir(""),$e(_(),"onResize"),Q().autoScrolling||$.N||function(){if(!Q().autoScrolling||Q().scrollBar){var n=.01*o.innerHeight;a.documentElement.style.setProperty("--vh","".concat(n,"px"))}}(),Bn.ln(qn),Et(),re(),u){var n=a.activeElement;if(!ni(n,"textarea")&&!ni(n,"input")&&!ni(n,"select")){var t=Me();Math.abs(t-zr)>20*Math.max(zr,t)/100&&(Cr(!0),zr=t)}}else e=Me(),i=Te(),$._===e&&Dr===i||(nn({_:e}),Dr=i,Cr(!0));var e,i;$e(_(),"onResizeEnds"),nn({C:!1})}(),Nr=!1}),400)}function Cr(n){if(!ye(_(),g)){nn({C:!0,_:Me(),_n:Te()});for(var t=tn().j,e=0;e1&&St(r,i.activeSlide.item)}Q().scrollOverflow&&he.bn();var u=tn().L.index();$.N||!u||rn("fadingEffect")||rn("dropEffect")||rn("waterEffect")||Rr(u+1),nn({C:!1}),qe(Q().afterResize)&&n&&Q().afterResize.call(_(),o.innerWidth,o.innerHeight),qe(Q().afterReBuild)&&!n&&Q().afterReBuild.call(_()),$e(_(),"afterRebuild")}}function Ir(n){tn().j.forEach((function(t){var e=""!==n||rn("offsetSections")?ln(t.item):"";Ae(t.item,{height:e})}))}function Wr(){var n,t,e=o.location.hash;if(e.length){var i=e.replace("#","").split("/"),r=e.indexOf("#/")>-1;n=r?"/"+i[1]:decodeURIComponent(i[0]);var a=r?i[2]:i[1];a&&a.length&&(t=decodeURIComponent(a))}return{section:n,pn:t}}function Fr(){Ke("hashchange",Vr)}function Vr(){if(!$.I&&!Q().lockAnchors){var n=Wr(),t=n.section,e=n.pn,i=void 0===$.W,r=void 0===$.W&&void 0===e&&!$.H;t&&t.length&&(t&&t!==$.W&&!i||r&&!an()||!$.H&&$.F!=e&&!an())&&Bn.ln(nt,{Un:t,slideAnchor:e})}}function Zr(n){var t=n.target;Fe(t,Q().menu+" [data-menuanchor]")&&Br.call(t,n)}function Br(n){nn({D:"menu"}),!be(Q().menu)[0]||!Q().lockAnchors&&Q().anchors.length||(Ue(n),Bn.ln(et,{anchor:Xe(this,"data-menuanchor")}))}function Gr(n){var t=n.target;t&&Fe(t,"#fp-nav a")?Bt.call(t,n.e):ni(t,".fp-tooltip")?Vt.call(t):(ni(t,C)||null!=Fe(t,C))&&ft.call(t,n.e)}f.reBuild=Cr,Bn.un(Jn,(function(){Hr(),Qe("resize",Hr),Bn.un(Kn,Pr)})),f.setLockAnchors=function(n){Q().lockAnchors=n},Bn.un(Jn,(function(){Qe("hashchange",Vr),Bn.un(Kn,Fr)})),Bn.un(Jn,(function(){_e("wheel",Ei.Cn,Ti()),Bn.un(ot,Ri),Bn.un(tt,ji)})),Bn.un(Jn,(function(){Bn.un(Un,Zr)})),Bn.un(Jn,(function(){Bn.un(Un,Gr)}));var Yr,Ur,Xr=0;function _r(n){var t,e,i,r,o;if($e(_(),"onScroll"),!$.C&&tn().L&&(ci(tn().j),!tn().N&&!tn().Fn&&(!Q().autoScrolling||Q().scrollBar||rn("dragAndMove"))&&!un())){var a=rn("dragAndMove")?Math.abs(on("dragAndMove","getCurrentScroll")):Ge(),u=function(n){var t=n>Xr?"down":"up";return Xr=n,nn({X:n}),t}(a),l=0,c=a+Me()/2,s=(rn("dragAndMove")?on("dragAndMove","getDocumentHeight"):jn.scrollHeight-Me())===a,f=tn().j;if(nn({scrollY:a}),s)l=f.length-1;else if(a)for(var d=0;d=Ge()+Me():r<=Ge())&&(ye(tn().L.item,S)||(De(tn().L.item,S),Ne(Ye(tn().L.item),S))),e=(t=f[l]).item,!t.isActive){nn({I:!0});var v,p,h=tn().L.item,g=tn().L.index()+1,m=Tn(tn().L,e),b=t.anchor,y=t.index()+1,T=t.activeSlide,A={L:h,sectionIndex:y-1,anchorLink:b,element:e,leavingSection:g,direction:m,items:{origin:tn().L,destination:t}};if(T&&(p=T.anchor,v=T.index()),$.canScroll)Ne(f.filter((function(n){return n.index()!==t.index()})).map((function(n){return n.item})),w),De(e,w),on("parallax","afterLoad"),qe(Q().beforeLeave)&&qt("beforeLeave",A),qe(Q().onLeave)&&Ht("onLeave",A),qe(Q().afterLoad)&&Ht("afterLoad",A),on("resetSliders","apply",{localIsResizing:$.C,leavingSection:g}),Hn(h),Cn(e),Nn(e),Gt(b,y-1),Q().anchors.length&&nn({W:b}),Et(),Fn(v,p,b);clearTimeout(Yr),Yr=setTimeout((function(){nn({I:!1})}),100)}Q().fitToSection&&$.canScroll&&(clearTimeout(Ur),Ur=setTimeout((function(){$.j.filter((function(n){var t=n.item.getBoundingClientRect();return Math.round(t.bottom)===Math.round(Me())||0===Math.round(t.top)})).length||ie()}),Q().A))}}function Qr(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){ht(n,t,"k")})):(ht(n,"all","k"),Q().keyboardScrolling=n)}function Jr(n){var t=n.index();void 0!==Q().anchors[t]&&n.isActive&&Gt(Q().anchors[t],t),Q().menu&&Q().css3&&null!=Fe(be(Q().menu)[0],v)&&be(Q().menu).forEach((function(n){jn.appendChild(n)}))}function Kr(){var n,t,e=tn().L,i=tn().L.item;De(i,S),Cn(i),Ft(),Nn(i),t=ar((n=Wr()).section),n.section&&t&&(void 0===t||t.index()!==Ee(ce))||!qe(Q().afterLoad)||Ht("afterLoad",{L:i,element:i,direction:null,anchorLink:e.anchor,sectionIndex:e.index(),items:{origin:tn().L,destination:tn().L}}),qe(Q().afterRender)&&Ht("afterRender"),$e(_(),"afterRender")}function qr(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){ht(n,t,"m")})):ht(n,"all","m"),$e(_(),"setAllowScrolling",{value:n,Qn:t})}function $r(){var n=Wr(),t=n.section,e=n.pn;t?Q().animateAnchor?lr(t,e):Rr(t,e):Bn.ln(Yn,null)}Bn.un(Kn,(function(){clearTimeout(Yr),clearTimeout(Ur)})),Bn.un(Jn,(function(){Qe("scroll",_r),a.body.addEventListener("scroll",_r),Bn.un(nt,(function(n){lr(n.Un,n.slideAnchor)})),Bn.un(et,(function(n){cr(n.anchor,void 0)})),Bn.un($n,(function(n){("down"===n.direction?Hi:Ci)()})),Bn.un(it,(function(n){$t(n.destination)}))})),Bn.un(Kn,(function(){Ke("scroll",_r)})),f.getActiveSlide=function(){return Pt(tn().L.activeSlide)},f.getScrollX=function(){return $.scrollX},Bn.un(Jn,(function(){Bn.un(Kn,Tt),Bn.un(rt,(function(n){St(n.slides,n.destination)})),Bn.un(_n,(function(n){or(n.section)})),Bn.un(Xn,(function(n){rr(n.section)}))})),Bn.un(Jn,(function(){var n=Q().credits.position,t=["left","right"].indexOf(n)>-1?"".concat(n,": 0;"):"",e='\n \n "),i=ci($.j),r=!$.Jn||Q().credits.enabled;i&&i.item&&r&&i.item.insertAdjacentHTML("beforeend",e)})),function(){Bn.un(Qn,(function(){var t,u,l;nn({Jn:(Q().licenseKey,t=Q().licenseKey,u=function(t){var e=parseInt("514").toString(16);if(!t||t.length<29||4===t.split(n[0]).length)return null;var i=["Each","for"][r()]().join(""),u=t[["split"]]("-"),l=[];u[i]((function(n,t){if(t<4){var i=function(n){var t=n[n.length-1],e=["NaN","is"][r()]().join("");return window[e](t)?o(t):function(n){return n-w.length}(t)}(n);l.push(i);var a=o(n[i]);if(1===t){var u=["pa","dS","t","art"].join("");a=a.toString()[u](2,"0")}e+=a,0!==t&&1!==t||(e+="-")}}));var c=0,s="";return t.split("-").forEach((function(n,t){if(t<4){for(var e=0,i=0;i<4;i++)i!==l[t]&&(e+=Math.abs(o(n[i])),isNaN(n[i])||c++);var r=a(e);s+=r}})),s+=a(c),{Kn:new Date(e+"T00:00"),qn:e.split("-")[2]===8*(w.length-2)+"",$n:s}}(t),l=function(n){var t=i[r()]().join("");return n&&0===t.indexOf(n)&&n.length===t.length}(t),(u||l)&&(u&&e<=u.Kn&&u.$n===t.split(n[0])[4]||l||u.qn)||!1)})}));var n=["-"],t="2024-0-31".split("-"),e=new Date(t[0],t[1],t[2]),i=["se","licen","-","v3","l","gp"];function r(){return[["re","verse"].join("")]["".length]}function o(n){return n?isNaN(n)?n.charCodeAt(0)-72:n:""}function a(n){var t=72+n;return t>90&&t<97&&(t+=15),String.fromCharCode(t).toUpperCase()}}(),f.setKeyboardScrolling=Qr,f.shared.nt=Kr,f.setAllowScrolling=qr;var no={};function to(){return no}var eo,io,ro,oo,ao=!ye(jn,sn("OHNsd3AtZnVsbHBhZ2UtanM5T20="));function uo(n){if(io=a.createElement("div"),eo=sn("MTIzPGRpdj48YSBocmVmPSJodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlL2V4dGVuc2lvbnMvIiBzdHlsZT0iY29sb3I6ICNmZmYgIWltcG9ydGFudDsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsiPlVubGljZW5zZWQgZnVsbFBhZ2UuanMgRXh0ZW5zaW9uPC9hPjwvZGl2PjEyMw=="),ao||(eo=eo.replace("extensions/","").replace("Extension","")),io.innerHTML=eo,io=io.firstChild,"MutationObserver"in window&&new MutationObserver(co).observe(a.body,{childList:!0,subtree:!1}),(!ao||rn(n)&&f[n])&&(!function(n){var t=void 0!==to()[n]&&to()[n].length,e=[],i=!1;return ze(to()[n])?e=to()[n]:e.push(to()[n]),e.forEach((function(e){var r=function(){if(a.domain.length){for(var n=a.domain.replace(/^(www\.)/,"").split(".");n.length>2;)n.shift();return n.join(".").replace(/(^\.*)|(\.*$)/g,"")}return""}(),o=["MTM0bG9jYWxob3N0MjM0","MTM0MC4xMjM0","MTM0anNoZWxsLm5ldDIzNA==","UDdDQU5ZNlNN","NTY3YnVuZGxlNzg5","NTU1S2V5Nzc3","NDU2dGVzdDQ1Ng=="],u=sn(o[0]),l=sn(o[1]),c=sn(o[2]),s=sn(o[6]),f=sn(o[3]),d=sn(o[4]),v=sn(o[5]),p=void 0!==Q()[d+v];t=t||p;var h=[u,l,c,s].indexOf(r)<0&&0!==r.length;if(!t&&!p&&h)return!1;var g=t?sn(e):"",m=(g=g.split("_")).length>1&&g[1].indexOf(n,g[1].length-n.length)>-1,w=g.length>1&&g[1].toLowerCase().indexOf(d)>-1,b=g[0].indexOf(r,g[0].length-r.length)<0,S=m||w;i=i||!(b&&h&&f!=g[0])&&S||!h})),i}(n)||!ao)){lo();var t=sn("MzQ1c2V0SW50ZXJ2YWwxMjM=");window[t](lo,2e3)}}function lo(){io&&(oo||(Math.random()<.5?cn(jn,io):Pe(io,jn),oo=!0),io.setAttribute("style",sn("MTIzei1pbmRleDo5OTk5OTk5O3Bvc2l0aW9uOmZpeGVkO3RvcDoyMHB4O2JvdHRvbTphdXRvO2xlZnQ6MjBweDtyaWdodDphdXRvO2JhY2tncm91bmQ6cmVkO3BhZGRpbmc6N3B4IDE1cHg7Zm9udC1zaXplOjE0cHg7Zm9udC1mYW1pbHk6YXJpYWw7Y29sb3I6I2ZmZjtkaXNwbGF5OmlubGluZS1ibG9jazt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO29wYWNpdHk6MTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3pvb206MTttYXJnaW46YXV0bztib3JkZXI6bm9uZTt2aXNpYmlsaXR5OnZpc2libGU7Y2xpcC1wYXRoOm5vbmU7MTIz").replace(/;/g,sn("MTIzICFpbXBvcnRhbnQ7MzQ1"))))}function co(n){n.forEach((function(n){if(n.removedNodes[0]&&n.removedNodes[0].isEqualNode(io)){clearTimeout(ro);var t=sn("bDIwc2V0VGltZW91dDAzbA==");ro=window[t](so,900)}}))}function so(){oo=!1}function fo(){Rt(),Et(),Q().scrollBar=Q().scrollBar||Q().hybrid,q(),function(){Ae(di(_(),"body"),{height:"100%",position:"relative"}),De(_(),d),De(Ln,m),nn({_:Me()}),Ne(_(),g),mi(),on("parallax","init");for(var n=tn().tn,t=0;t0&&wi(e)}Q().fixedElements&&Q().css3&&be(Q().fixedElements).forEach((function(n){jn.appendChild(n)})),Q().navigation&&Zt(),be('iframe[src*="youtube.com/embed/"]',_()).forEach((function(n){var t,e;e=Xe(t=n,"src"),t.setAttribute("src",e+(/\?/.test(e)?"&":"?")+"enablejsapi=1")})),on("fadingEffect","apply"),on("waterEffect","init"),on("dropEffect","init"),on("cards","init"),Q().scrollOverflow&&he.bn()}(),qr(!0),Ar(!0),It(Q().autoScrolling,"internal"),re(),In(),"complete"===a.readyState&&$r(),Qe("load",$r),Kr(),ao||uo("l"),Rt(),Et()}function vo(){var n=Q().licenseKey;""===Q().licenseKey.trim()?(ge("error","Fullpage.js requires a `licenseKey` option. Read about it on the following URL:"),ge("error","https://github.com/alvarotrigo/fullPage.js#options")):Q()&&$.Jn||a.domain.indexOf("alvarotrigo.com")>-1?n&&n.length:(ge("error","Incorrect `licenseKey`. Get one for fullPage.js version 4 here:"),ge("error","https://alvarotrigo.com/fullPage/pricing")),ye(Ln,m)?ge("error","Fullpage.js can only be initialized once and you are doing it multiple times!"):(Q().continuousVertical&&(Q().loopTop||Q().loopBottom)&&(Q().continuousVertical=!1,ge("warn","Option `loopTop/loopBottom` is mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),!Q().scrollOverflow||!Q().scrollBar&&Q().autoScrolling||ge("warn","Options scrollBar:true and autoScrolling:false are mutually exclusive with scrollOverflow:true. Sections with scrollOverflow might not work well in Firefox"),!Q().continuousVertical||!Q().scrollBar&&Q().autoScrolling||(Q().continuousVertical=!1,ge("warn","Scroll bars (`scrollBar:true` or `autoScrolling:false`) are mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),Q().anchors.forEach((function(n){var t=[].slice.call(be("[name]")).filter((function(t){return Xe(t,"name")&&Xe(t,"name").toLowerCase()==n.toLowerCase()})),e=[].slice.call(be("[id]")).filter((function(t){return Xe(t,"id")&&Xe(t,"id").toLowerCase()==n.toLowerCase()}));if(e.length||t.length){ge("error","data-anchor tags can not have the same value as any `id` element on the site (or `name` element for IE).");var i=e.length?"id":"name";(e.length||t.length)&&ge("error",'"'+n+'" is is being used by another element `'+i+"` property")}})))}function po(){return{options:Q(),internals:{container:_(),canScroll:$.canScroll,isScrollAllowed:gt(),getDestinationPosition:ne,isTouch:c,c:uo,getXmovement:Mt,removeAnimation:An,getTransforms:xn,lazyLoad:Cn,addAnimation:Mn,performHorizontalMove:yt,landscapeScroll:St,silentLandscapeScroll:xt,keepSlidesPosition:Wt,silentScroll:kn,styleSlides:wi,styleSection:se,scrollHandler:_r,getEventsPage:nr,getMSPointer:tr,isReallyTouch:Ki,usingExtension:rn,toggleControlArrows:wt,touchStartHandler:qi,touchMoveHandler:Ji,nullOrSection:Nt,items:{SectionPanel:zt,SlidePanel:Dt,Item:dn},getVisible:we,getState:tn,updateState:Et,updateStructuralState:Rt,activeSlidesNavigation:dt,getPanels:function(){return $.rn},getSections:function(){return $.j},setActiveSection:function(n){$.L=n}}}}function ho(n){var t=["NTY3YnVuZGxlNzg5","NTU1S2V5Nzc3"],e=sn(t[0]),i=sn(t[1]),r=void 0!==Q()[e+i],o="fp_"+n+"Extension";to()[n]=r?Q()[e+i]:Q()[n+i],f[n]=void 0!==window[o]?new window[o]:null,f[n]&&f[n].c(n)}function go(n,t){var e;if(jn=be("body")[0],Ln=be("html")[0],zn=be("html, body"),!ye(Ln,m))return"touchWrapper",e="string"==typeof n?be(n)[0]:n,B.touchWrapper=e,function(n){X=Se({},B,n),U=Object.assign({},X)}(t),function(n){G=n}("string"==typeof n?be(n)[0]:n),Bn.ln(Qn),vo(),f.getFullpageData=po,f.version="4.0.22",f.test=Object.assign(f.test,{top:"0px",on:"translate3d(0px, 0px, 0px)",cn:function(){for(var n=[],t=0;t>>0;if("function"!=typeof n)throw new TypeError("predicate must be a function");for(var i=arguments[1],r=0;r0?1:-1)*Math.floor(Math.abs(t)):t}(n);return Math.min(Math.max(t,0),e)},function(n){var e=this,r=Object(n);if(null==n)throw new TypeError("Array.from requires an array-like object - not null or undefined");var o,a=arguments.length>1?arguments[1]:void 0;if(void 0!==a){if(!t(a))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(o=arguments[2])}for(var u,l=i(r.length),c=t(e)?Object(new e(l)):new Array(l),s=0;s0||navigator.maxTouchPoints,s=!!window.MSInputMethodContext&&!!document.documentMode,f={test:{},shared:{}};o.NodeList&&!NodeList.prototype.forEach&&(NodeList.prototype.forEach=function(n,t){t=t||window;for(var e=0;e
    ','
    '],controlArrowColor:"#fff",verticalCentered:!0,sectionsColor:[],paddingTop:0,paddingBottom:0,fixedElements:null,responsive:0,responsiveWidth:0,responsiveHeight:0,responsiveSlides:!1,parallax:!1,parallaxOptions:{type:"reveal",percentage:62,property:"translate"},cards:!1,cardsOptions:{perspective:100,fadeContent:!0,fadeBackground:!0},sectionSelector:".section",slideSelector:".slide",afterLoad:null,beforeLeave:null,onLeave:null,afterRender:null,afterResize:null,afterReBuild:null,afterSlideLoad:null,onSlideLeave:null,afterResponsive:null,onScrollOverflow:null,lazyLoading:!0,observer:!0},G=null,Y=!1,U=ye({},B),X=null;function _(n){return G}function Q(){return X||B}function J(){return U}function K(n,t,e){X[n]=t,"internal"!==e&&(U[n]=t)}function q(){if(!Q().anchors.length){var n=Se(Q().sectionSelector.split(",").join("[data-anchor],")+"[data-anchor]",G);n.length&&n.length===Se(Q().sectionSelector,G).length&&(Y=!0,n.forEach((function(n){Q().anchors.push(_e(n,"data-anchor").toString())})))}if(!Q().navigationTooltips.length){var t=Se(Q().sectionSelector.split(",").join("[data-tooltip],")+"[data-tooltip]",G);t.length&&t.forEach((function(n){Q().navigationTooltips.push(_e(n,"data-tooltip").toString())}))}}var $={O:0,R:0,slides:[],j:[],L:null,D:null,N:!1,P:!1,H:!1,C:!1,I:!1,W:void 0,F:void 0,V:!1,canScroll:!0,Z:"none",B:"none",G:!1,Y:!1,U:!0,X:0,_:Te(),J:!1,K:{}};function nn(n){Object.assign($,n)}function tn(){return $}function en(n){return void 0!==window["fp_"+n+"Extension"]}function rn(n){var t=Q();return null!==t[n]&&"[object Array]"===Object.prototype.toString.call(t[n])?t[n].length&&f[n]:t[n]&&f[n]}function on(n,t,e){if(rn(n))return $e(f[n][t])?f[n][t](e):f[n][t]}function an(){return on("dragAndMove","isAnimating")}function un(){return on("dragAndMove","isGrabbing")}function ln(n){if(Q().offsetSections&&f.offsetSections){var t=on("offsetSections","getWindowHeight",n);return""!==t?Math.round(t)+"px":t}return Te()+"px"}function cn(n,t){n.insertBefore(t,n.firstChild)}function sn(n){var t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";function e(n){var e,i,r,o,a,u,l="",c=0;for(n=n.replace(/[^A-Za-z0-9+/=]/g,"");c>4,i=(15&o)<<4|(a=t.indexOf(n.charAt(c++)))>>2,r=(3&a)<<6|(u=t.indexOf(n.charAt(c++))),l+=String.fromCharCode(e),64!=a&&(l+=String.fromCharCode(i)),64!=u&&(l+=String.fromCharCode(r));return l=function(n){for(var t,e="",i=0,r=0,o=0;i191&&r<224?(o=n.charCodeAt(i+1),e+=String.fromCharCode((31&r)<<6|63&o),i+=2):(o=n.charCodeAt(i+1),t=n.charCodeAt(i+2),e+=String.fromCharCode((15&r)<<12|(63&o)<<6|63&t),i+=3);return e}(l),l}function i(n){return n.slice(3).slice(0,-3)}return function(n){var t=n.split("_");if(t.length>1){var r=t[1];return e(n.replace(i(t[1]),"").split("_")[0].slice(2).slice(0,-2))+"_"+e(r.slice(3).slice(0,-3))}return i(n)}(e(n))}o.state=$,o.fp_utils=o.fp_utils||{},Object.assign(o.fp_utils,{prependTo:cn,toggleClass:function(n,t,e){if(n.classList&&null==e)n.classList.toggle(t);else{var i=Me(n,t);i&&null==e||!e?Pe(n,t):(!i&&null==e||e)&&Ne(n,t)}}});var fn=function(n){this.anchor=n.anchor,this.item=n.item,this.index=n.index(),this.isLast=this.index===n.item.parentElement.querySelectorAll(n.selector).length-1,this.isFirst=!this.index,this.isActive=n.isActive},dn=function(n,t){this.parent=this.parent||null,this.selector=t,this.anchor=_e(n,"data-anchor")||Q().anchors[Re(n,Q().sectionSelector)],this.item=n,this.isVisible=we(n),this.isActive=Me(n,w),this.q=Me(n,D)||null!=Se(N,n)[0],this.nn=t===Q().sectionSelector,this.container=Ve(n,L)||Ve(n,v),this.index=function(){return this.siblings().indexOf(this)}};function vn(n){return n.map((function(n){return n.item}))}function pn(n,t){return n.find((function(n){return n.item===t}))}dn.prototype.siblings=function(){return this.nn?this.isVisible?$.j:$.tn:this.parent?this.parent.slides:0},dn.prototype.prev=function(){var n=this.siblings(),t=(this.nn?n.indexOf(this):this.parent.slides.indexOf(this))-1;return t>=0?n[t]:null},dn.prototype.next=function(){var n=this.siblings(),t=(this.nn?n.indexOf(this):this.parent.slides.indexOf(this))+1;return ti?"up":"down"}function An(n){return Ne(n,h)}function xn(n){return{"-webkit-transform":n,"-moz-transform":n,"-ms-transform":n,transform:n}}function On(n,t){t?Mn(_()):An(_()),clearTimeout(hn),xe(_(),xn(n)),f.test.on=n,hn=setTimeout((function(){Pe(_(),h)}),10)}function kn(n){var t=Math.round(n);if(Q().css3&&Q().autoScrolling&&!Q().scrollBar)On("translate3d(0px, -"+t+"px, 0px)",!1);else if(Q().autoScrolling&&!Q().scrollBar)xe(_(),{top:-t+"px"}),f.test.top=-t+"px";else{var e=Sn(t);yn(e.element,e.options)}}function En(n,t){"internal"!==t&&on("fadingEffect","update",n),on("cards","update_",n),K("scrollingSpeed",n,t)}f.setScrollingSpeed=En;var Rn,jn=null,Ln=null,zn=null;function Dn(n,t,e,i){var r,a=function(n){return n.self!=o&&Me(n,E)?n.scrollLeft:!Q().autoScrolling||Q().scrollBar?Ye():n.offsetTop}(n),u=t-a,l=!1,c=$.V;nn({V:!0}),Rn&&window.cancelAnimationFrame(Rn),Rn=function(s){r||(r=s);var f=Math.floor(s-r);if($.V){var d=t;e&&(d=o.fp_easings[Q().easing](f,a,u,e)),f<=e&&yn(n,d),f-1&&this.an[n].splice(e,1)}},ln:function(n){for(var t=this,e=arguments.length,i=new Array(e>1?e-1:0),r=1;rt?"left":"right"}function At(){clearTimeout(pt)}function xt(n){on("continuousHorizontal","afterSlideLoads",n),on("dragAndMove","afterSlideLoads",n),n.localIsResizing||(on("parallax","afterSlideLoads"),on("scrollOverflowReset","setPrevious",n.prevSlide),on("scrollOverflowReset","reset"),$e(Q().afterSlideLoad)&&Ct("afterSlideLoad",n),nn({canScroll:!0}),Nn(n.destiny),Bn.ln(ft,n)),nn({H:!1}),on("interlockedSlides","interlockedSlides",n)}function Ot(n,t){En(0,"internal"),void 0!==t&&nn({C:!0}),yt(Ve(n,R),n),void 0!==t&&nn({C:!1}),En(J().scrollingSpeed,"internal")}ht.m={up:!0,down:!0,left:!0,right:!0},ht.k=ye({},ht.m),Bn.un(Un,(function(n){var t=n.target;(ti(t,W)||Ve(t,W))&&wt.call(t,n)})),f.landscapeScroll=yt,Bn.un(Kn,(function(){Bn.un(ut,St)}));var kt=null,Et=null;function Rt(){$.L=null,$.j.map((function(n){var t=Me(n.item,w);n.isActive=t,n.q=ge.q(n.item),t&&($.L=n),n.slides.length&&(n.activeSlide=null,n.slides.map((function(t){var e=Me(t.item,w);t.q=ge.q(n.item),t.isActive=e,e&&(n.activeSlide=t)})))})),function(){var n=$.L,t=!!$.L&&$.L.slides.length,e=$.L?$.L.activeSlide:null;if(!n&&$.j.length&&!tn().N){if(kt){var i=zt(kt,$.j);i&&($.L=i,$.L.isActive=!0,Ne($.L.item,w)),$.L&&kn($.L.item.offsetTop)}if(t&&!e&&Et){var r=zt(Et,$.L.slides);r&&($.L.activeSlide=r,$.L.activeSlide.isActive=!0,Ne($.L.activeSlide.item,w)),$.L.activeSlide&&Ot($.L.activeSlide.item,"internal")}}}(),ni(_(),"onUpdateStateDone")}function jt(){var n=Se(Q().sectionSelector+", "+M,_()),t=be(n),e=Array.from(n).map((function(n){return new Dt(n)})),i=e.filter((function(n){return n.isVisible})),r=i.reduce((function(n,t){return n.concat(t.slides)}),[]);kt=Lt($.L),Et=Lt($.L?$.L.activeSlide:null),$.O=t.length,$.R=i.reduce((function(n,t){return n+t.slides.length}),0),$.j=i,$.tn=e,$.slides=r,$.rn=$.j.concat($.slides)}function Lt(n){if(!n)return null;var t=n?n.item:null,e=n.nn?$.tn:$.L.dn;if(t){var i=pn(e,t);return i?i.index():null}return null}function zt(n,t){var e,i=n-1,r=n;do{if(e=t[i]||t[r])break;i-=1,r+=1}while(i>=0||r0,o=i>2&&i<$._,(r||o)&&Cn(n)}))}function Zt(){ni(Oe(this),"click")}function Bt(){ri(Se(A));var n=a.createElement("div");n.setAttribute("id","fp-nav");var t=a.createElement("ul");n.appendChild(t),He(n,jn);var e=Se(A)[0];Ne(e,"fp-"+Q().navigationPosition),Q().showActiveTooltip&&Ne(e,"fp-show-active");for(var i="",r=0;r'+Gn(o.index(),"Section")+"";var l=Q().navigationTooltips[o.index()];void 0!==l&&""!==l&&(i+='
    '+l+"
    "),i+=""}Se("ul",e)[0].innerHTML=i;var c=Se("li",Se(A)[0])[tn().L.index()];Ne(Se("a",c),w)}function Gt(n){n.preventDefault&&Xe(n),nn({D:"verticalNav"});var t=Re(Ve(this,"#fp-nav li"));Bn.ln(rt,{destination:tn().j[t]})}function Yt(n,t){var e;e=n,Q().menu&&Q().menu.length&&Se(Q().menu).forEach((function(n){null!=n&&(Pe(Se(b,n),w),Ne(Se('[data-menuanchor="'+e+'"]',n),w))})),function(n,t){var e=Se(A)[0];Q().navigation&&null!=e&&"none"!==e.style.display&&(Pe(Se(b,e),w),Ne(n?Se('a[href="#'+n+'"]',e):Se("a",Se("li",e)[t]),w))}(n,t)}Nt.prototype=dn.prototype,Nt.prototype.constructor=Dt,f.setRecordHistory=It,f.setAutoScrolling=Wt,f.test.setAutoScrolling=Wt,(new Date).getTime();var Ut,Xt,_t,Qt,Jt,Kt,qt=(Xt=!0,_t=(new Date).getTime(),Qt=!o.fullpage_api,function(n,t){var e=(new Date).getTime(),i="wheel"===n?Q().scrollingSpeed:100;return Xt=Qt||e-_t>=i,Qt=!o.fullpage_api,Xt&&(Ut=t(),_t=e),void 0===Ut||Ut});function $t(n,t){if($e(Q().beforeLeave))return qt(tn().D,(function(){return Ct(n,t)}))}function ne(n,t,e){var i=n.item;if(null!=i){var r,o,a={element:i,callback:t,isMovementUp:e,dtop:te(i),yMovement:Tn(tn().L,i),anchorLink:n.anchor,sectionIndex:n.index(),activeSlide:n.activeSlide?n.activeSlide.item:null,leavingSection:tn().L.index()+1,localIsResizing:$.C,items:{origin:tn().L,destination:n},direction:null};if(!(tn().L.item==i&&!$.C||Q().scrollBar&&Ye()===a.dtop&&!Me(i,"fp-auto-height"))){if(null!=a.activeSlide&&(r=_e(a.activeSlide,"data-anchor"),o=Re(a.activeSlide,null)),!a.localIsResizing){var u=a.yMovement;if(void 0!==e&&(u=e?"up":"down"),a.direction=u,en("dropEffect")&&f.dropEffect.onLeave_(a),en("waterEffect")&&f.waterEffect.onLeave_(a),$e(Q().beforeLeave)&&!1===$t("beforeLeave",a))return;if($e(Q().onLeave)&&!Ct("onLeave",a))return}on("parallax","apply",a),on("cards","apply",a),on("dropEffect","apply",a),on("waterEffect","apply",a),Q().autoScrolling&&Q().continuousVertical&&void 0!==a.isMovementUp&&(!a.isMovementUp&&"up"==a.yMovement||a.isMovementUp&&"down"==a.yMovement)&&(a=function(n){nn({J:!0});var t=tn().L.item;return n.isMovementUp?Be(t,ui(t,M)):Ze(t,li(t,M).reverse()),kn(tn().L.item.offsetTop),Ft(),n.hn=t,n.dtop=n.element.offsetTop,n.yMovement=Tn(tn().L,n.element),n.leavingSection=n.items.origin.index()+1,n.sectionIndex=n.items.destination.index(),ni(_(),"onContinuousVertical",n),n}(a)),on("scrollOverflowReset","setPrevious",tn().L.item),a.localIsResizing||Hn(tn().L.item),rn("dropEffect")&&Q().dropEffect||(Ne(i,w),Pe(Ue(i),w)),Rt(),Cn(i),nn({canScroll:f.test.gn}),Fn(o,r,a.anchorLink),Bn.ln(ct,a),function(n){var t=Q().scrollingSpeed<700,e=t?700:Q().scrollingSpeed;if(nn({Z:"none",scrollY:Math.round(n.dtop)}),Bn.ln(ut),Q().css3&&Q().autoScrolling&&!Q().scrollBar)On("translate3d(0px, -"+Math.round(n.dtop)+"px, 0px)",!0),rn("waterEffect")&&Ft(),Q().scrollingSpeed?(clearTimeout(Jt),Jt=setTimeout((function(){ee(n),nn({canScroll:!t||f.test.gn})}),Q().scrollingSpeed)):ee(n);else{var i=Sn(n.dtop);f.test.top=-n.dtop+"px",clearTimeout(Jt),Dn(i.element,i.options,Q().scrollingSpeed,(function(){Q().scrollBar?Jt=setTimeout((function(){ee(n)}),30):(ee(n),nn({canScroll:!t||f.test.gn}))}))}t&&(clearTimeout(Kt),Kt=setTimeout((function(){nn({canScroll:!0})}),e))}(a),nn({W:a.anchorLink}),Yt(a.anchorLink,function(n){return null!=n.hn?n.isMovementUp?$.O-1:0:n.sectionIndex}(a))}}}function te(n){var t=n.offsetHeight,e=n.offsetTop,i=e,r=rn("dragAndMove")&&on("dragAndMove","isGrabbing")?on("dragAndMove","isScrollingDown"):e>$.X,o=i-Te()+t,a=Q().bigSectionsDestination;return t>Te()?(r||a)&&"bottom"!==a||(i=o):(r||$.C&&null==ke(n))&&(i=o),rn("offsetSections")&&(i=f.offsetSections.getSectionPosition_(r,i,n)),nn({X:i}),i}function ee(n){nn({N:!1}),function(n){null!=n.hn&&(n.isMovementUp?Be(Se(M)[0],n.hn):Ze(Se(M)[tn().j.length-1],n.hn),kn(tn().L.item.offsetTop),function(){for(var n=Se(k),t=0;t-1&&!ge.An)return Xe(n),!1},yn:function(){ge.Tn=$.canScroll},onLeave:function(){clearTimeout(ce),ge.An=!1},afterLoad:function(){ge.An=!1,clearTimeout(ce),ce=setTimeout((function(){ge.Tn=$.canScroll}),200)},Rn:function(){a.activeElement===this.Mn&&(this.Mn.blur(),ge.An=!1)},Sn:function(){if(Q().scrollOverflow&&ge.Tn){ge.Rn();var n=ge.jn(tn().L.item);!n||u||c||(this.Mn=n,requestAnimationFrame((function(){n.focus({Ln:!0}),ge.An=!0}))),ge.Tn=!1}},bn:function(){Q().scrollOverflowMacStyle&&!l&&Ne(jn,"fp-scroll-mac"),tn().rn.forEach((function(n){if(!(n.slides&&n.slides.length||Me(n.item,"fp-auto-height-responsive")&&ue())){var t,e=wn(n.item),i=ge.mn(n.item),o=(t=n).nn?t:t.parent;if(s){var a=i?"addClass":"removeClass";r[a](o.item,P),r[a](n.item,P)}else Ne(o.item,P),Ne(n.item,P);n.q||(ge.zn(e),ge.Dn(e)),n.q=!0}}))},Dn:function(n){ge.jn(n).addEventListener("scroll",ge.Nn),n.addEventListener("wheel",ge.kn,{passive:!1}),n.addEventListener("keydown",ge.En,{passive:!1})},zn:function(n){var t=document.createElement("div");t.className=D,We(n,t),t.setAttribute("tabindex","-1")},Pn:function(n){var t=Se(N,n)[0];t&&(Fe(t),n.removeAttribute("tabindex"))},jn:function(n){var t=wn(n);return Se(N,t)[0]||t},q:function(n){return Me(n,D)||null!=Se(N,n)[0]},wn:function(n){return n.nn&&n.activeSlide?n.activeSlide.q:n.q},mn:function(n){return ge.jn(n).scrollHeight>o.innerHeight},isScrolled:function(n,t){if(!$.canScroll)return!1;if(Q().scrollBar)return!0;var e=ge.jn(t);if(!Q().scrollOverflow||!Me(e,D)||Me(t,"fp-noscroll")||Me(wn(t),"fp-noscroll"))return!0;var i=s?1:0,r=e.scrollTop,o="up"===n&&r<=0,a="down"===n&&e.scrollHeight<=Math.ceil(e.offsetHeight+r)+i,u=o||a;return u||(this.xn=(new Date).getTime()),u},Hn:function(){this.On=(new Date).getTime();var n=this.On-ge.xn,t=(u||c)&&$.G,e=$.Y&&n>600;return t&&n>400||e},Nn:(pe=0,function(n){var t=n.target.scrollTop,e="none"!==$.Z?$.Z:pe1?t:document)?t.querySelectorAll(n):null}function ye(n){n=n||{};for(var t=1,e=arguments.length;t1&&(Q().controlArrows&&function(n){var t=n.item,e=[ii(Q().controlArrowsHTML[0]),ii(Q().controlArrowsHTML[1])];Ze(Se(R,t)[0],e),Ne(e,I),Ne(e[0],F),Ne(e[1],"fp-next"),"#fff"!==Q().controlArrowColor&&(xe(Se(Z,t),{"border-color":"transparent transparent transparent "+Q().controlArrowColor}),xe(Se(V,t),{"border-color":"transparent "+Q().controlArrowColor+" transparent transparent"})),Q().loopHorizontal||Le(Se(V,t))}(n),Q().slidesNavigation&&function(n){var t=n.item,e=n.slides.length;He(ii('
      '),t);var i=Se(H,t)[0];Ne(i,"fp-"+Q().slidesNavPosition);for(var r=0;r'+Gn(r,"Slide",Se(O,t)[r])+""),Se("ul",i)[0]);xe(i,{"margin-left":"-"+i.innerWidth/2+"px"});var o=n.activeSlide?n.activeSlide.index():0;Ne(Se("a",Se("li",i)[o]),w)}(n)),i.forEach((function(n){xe(n.item,{width:o+"%"}),Q().verticalCentered&&le(n)}));var c=rn("responsiveSlides")?null:n.activeSlide||null;null!=c&&$.L&&(0!==$.L.index()||0===$.L.index()&&0!==c.index())?(Ot(c.item,"internal"),Ne(c.item,"fp-initial")):Ne(e[0],w)}window.fp_utils=Object.assign(o.fp_utils||{},{$:Se,deepExtend:ye,hasClass:Me,getWindowHeight:Te,css:xe,prev:Oe,next:ke,last:Ee,index:Re,getList:je,hide:Le,show:ze,isArrayOrList:De,addClass:Ne,removeClass:Pe,appendTo:He,wrap:Ce,wrapAll:Ie,wrapInner:We,unwrap:Fe,closest:Ve,after:Ze,before:Be,insertBefore:Ge,getScrollTop:Ye,siblings:Ue,preventDefault:Xe,isFunction:$e,trigger:ni,matches:ti,toggle:ei,createElementFromHTML:ii,remove:ri,filter:oi,untilAll:ai,nextAll:ui,prevAll:li,showError:me,scrollOverflowHandler:ge}),Bn.un(Kn,(function(){["click","touchstart"].forEach((function(n){Qe(n,hi,{passive:!1})})),Je("focus",mi),Bn.un(qn,gi)}));var Si={attributes:!1,subtree:!0,childList:!0,characterData:!0};function yi(){return on("responsiveSlides","isResponsiveSlidesChanging")||be(Se(Q().slideSelector,_())).length!==tn().R}function Mi(n){var t=yi();(yi()||on("responsiveSlides","isResponsiveSlidesChanging")||be(Se(Q().sectionSelector,_())).length!==tn().O)&&!$.J&&(Q().observer&&he&&he.disconnect(),jt(),Rt(),Q().anchors=[],ri(Se(A)),on("responsiveSlides","isResponsiveSlidesChanging")||wi(),q(),Q().navigation&&Bt(),t&&(ri(Se(H)),ri(Se(W))),tn().j.forEach((function(n){n.slides.length?t&&bi(n):fe(n)}))),Q().observer&&he&&Se(v)[0]&&he.observe(Se(v)[0],Si)}Bn.un(Kn,(function(){var n,t,e;Q().observer&&"MutationObserver"in window&&Se(v)[0]&&(n=Se(v)[0],t=Si,(e=new MutationObserver(Mi)).observe(n,t),he=e),Bn.un($n,Mi)})),f.render=Mi;var Ti=function(){var n=!1;try{var t=Object.defineProperty({},"passive",{get:function(){n=!0}});Je("testPassive",null,t),qe("testPassive",null,t)}catch(n){}return function(){return n}}();function Ai(){return!!Ti()&&{passive:!1}}var xi,Oi,ki,Ei,Ri=(ki=(new Date).getTime(),Ei=[],{In:function(n){var t=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,e=Math.max(-1,Math.min(1,t)),i=void 0!==n.wheelDeltaX||void 0!==n.deltaX;xi=Math.abs(n.wheelDeltaX)149&&Ei.shift(),Ei.push(Math.abs(t));var a=r-ki;ki=r,a>200&&(Ei=[])},Wn:function(){var n=fi(Ei,10)>=fi(Ei,70);return!!Ei.length&&n&&xi},Fn:function(){return Oi}});function ji(){var n=Q().css3?Ye()+Te():si(tn().j).item.offsetTop+si(tn().j).item.offsetHeight,t=Sn(n);f.test.top=-n+"px",nn({canScroll:!1}),Dn(t.element,t.options,Q().scrollingSpeed,(function(){setTimeout((function(){nn({N:!0}),nn({canScroll:!0})}),30)}))}function Li(){_().getBoundingClientRect().bottom>=0&&zi()}function zi(){var n=Sn(si(tn().j).item.offsetTop);nn({canScroll:!1}),Dn(n.element,n.options,Q().scrollingSpeed,(function(){nn({canScroll:!0}),nn({N:!1}),nn({Vn:!1})}))}var Di,Ni,Pi,Hi=(Di=!1,Ni={},Pi={},function(n,t,e){switch(n){case"set":Ni[t]=(new Date).getTime(),Pi[t]=e;break;case"isNewKeyframe":var i=(new Date).getTime();Di=i-Ni[t]>Pi[t]}return Di});function Ci(){var n=tn().L.next();n||!Q().loopBottom&&!Q().continuousVertical||(n=tn().j[0]),null!=n?ne(n,null,!1):_().scrollHeightWi&&mt().m.down&&Ci()),Wi=n.pageY)}function Vi(n){if(mt().m[n]){var t="down"===n?Ci:Ii;rn("scrollHorizontally")&&(t=on("scrollHorizontally","getScrollSection",{type:n,scrollSection:t})),Q().scrollOverflow&&ge.wn(tn().L)?ge.isScrolled(n,tn().L.item)&&ge.Hn()&&t():t()}}var Zi,Bi,Gi,Yi=0,Ui=0,Xi=0,_i=0,Qi=er(),Ji={Bn:"ontouchmove"in window?"touchmove":Qi?Qi.move:null,Gn:"ontouchstart"in window?"touchstart":Qi?Qi.down:null};function Ki(n){var t=Ve(n.target,M)||tn().L.item,e=ge.wn(tn().L);if(qi(n)){nn({G:!0,Y:!1}),Q().autoScrolling&&(e&&!$.canScroll||Q().scrollBar)&&Xe(n);var i=tr(n);Xi=i.y,_i=i.x;var r=Math.abs(Yi-Xi)>o.innerHeight/100*Q().touchSensitivity,a=Math.abs(Ui-_i)>Ae()/100*Q().touchSensitivity,u=Se(R,t).length&&Math.abs(Ui-_i)>Math.abs(Yi-Xi),l=Yi>Xi?"down":"up";nn({Z:u?Ui>_i?"right":"left":l}),u?!$.H&&a&&(Ui>_i?mt().m.right&&Bn.ln(_n,{section:t}):mt().m.left&&Bn.ln(Xn,{section:t})):Q().autoScrolling&&$.canScroll&&r&&Vi(l)}}function qi(n){return void 0===n.pointerType||"mouse"!=n.pointerType}function $i(n){if(Q().fitToSection&&nn({V:!1}),qi(n)){var t=tr(n);Yi=t.y,Ui=t.x}Je("touchend",nr)}function nr(){qe("touchend",nr),nn({G:!1})}function tr(n){var t={};return t.y=void 0!==n.pageY&&(n.pageY||n.pageX)?n.pageY:n.touches[0].pageY,t.x=void 0!==n.pageX&&(n.pageY||n.pageX)?n.pageX:n.touches[0].pageX,c&&qi(n)&&Q().scrollBar&&void 0!==n.touches&&(t.y=n.touches[0].pageY,t.x=n.touches[0].pageX),t}function er(){var n;return o.PointerEvent&&(n={down:"pointerdown",move:"pointermove"}),n}function ir(n){Q().autoScrolling&&qi(n)&&mt().m.up&&($.canScroll||Xe(n))}function rr(n,t){var e=null==t?tn().L.item:t,i=pn($.j,e),r=Se(R,e)[0];if(!(null==r||an()||$.H||i.slides.length<2)){var o=i.activeSlide,a="left"===n?o.prev():o.next();if(!a){if(!Q().loopHorizontal)return;a="left"===n?si(i.slides):i.slides[0]}nn({H:!f.test.gn}),yt(r,a.item,n)}}function or(n){rr("left",n)}function ar(n){rr("right",n)}function ur(n){var t=tn().j.filter((function(t){return t.anchor===n}))[0];if(!t){var e=void 0!==n?n-1:0;t=tn().j[e]}return t}function lr(n){null!=n&&yt(Ve(n,R),n)}function cr(n,t){var e=ur(n);if(null!=e){var i=function(n,t){var e=t.slides.filter((function(t){return t.anchor===n}))[0];return null==e&&(n=void 0!==n?n:0,e=t.slides[n]),e?e.item:null}(t,e);e.anchor&&e.anchor===$.W||Me(e.item,w)?lr(i):ne(e,(function(){lr(i)}))}}function sr(n,t){var e=ur(n);void 0!==t?cr(n,t):null!=e&&ne(e)}function fr(){clearTimeout(Bi),Ke("keydown",dr),Ke("keyup",vr)}function dr(n){clearTimeout(Bi);var t=n.keyCode,e=[37,39].indexOf(t)>-1,i=Q().autoScrolling||Q().fitToSection||e;9===t?function(n){var t=n.shiftKey,e=a.activeElement,i=wr(wn(tn().L.item));function r(n){return Xe(n),i[0]?i[0].focus():null}if($.canScroll){if(!function(n){var t=wr(a),e=t.indexOf(a.activeElement),i=t[n.shiftKey?e-1:e+1],r=Ve(i,O),o=Ve(i,M);return!r&&!o}(n)){e?null==Ve(e,".fp-section.active,.fp-section.active .fp-slide.active")&&(e=r(n)):r(n);var o=e==i[0],u=e==i[i.length-1],l=t&&o;if(l||!t&&u){Xe(n);var c=function(n){var t,e=n?"prevPanel":"nextPanel",i=[],r=bn(($.L&&$.L.activeSlide?$.L.activeSlide:$.L)[e]());do{(i=wr(r.item)).length&&(t={Yn:r,Un:i[n?i.length-1:0]}),r=bn(r[e]())}while(r&&0===i.length);return t}(l),s=c?c.Yn:null;if(s){var f=s.nn?s:s.parent;Bn.ln(tt,{Xn:f.index()+1,slideAnchor:s.nn?0:s.index()}),Gi=c.Un,Xe(n)}}}}else Xe(n)}(n):!pi()&&Q().keyboardScrolling&&i&&(Zi=n.ctrlKey,Bi=setTimeout((function(){!function(n){var t=n.shiftKey,e=a.activeElement,i=ti(e,"video")||ti(e,"audio"),r=ge.isScrolled("up",tn().L.item),o=ge.isScrolled("down",tn().L.item),u=[37,39].indexOf(n.keyCode)>-1;if(function(n){(function(n){return[40,38,32,33,34].indexOf(n.keyCode)>-1&&!$.N})(n)&&!Ve(n.target,N)&&n.preventDefault()}(n),$.canScroll||u)switch(nn({D:"keydown"}),n.keyCode){case 38:case 33:mt().k.up&&r?$.N?Bn.ln(et,{e:n}):Ii():ge.Sn();break;case 32:if(t&&mt().k.up&&!i&&r){Ii();break}case 40:case 34:if(mt().k.down&&o){if($.N)return;32===n.keyCode&&i||Ci()}else ge.Sn();break;case 36:mt().k.up&&sr(1);break;case 35:mt().k.down&&sr(tn().j.length);break;case 37:mt().k.left&&or();break;case 39:mt().k.right&&ar()}}(n)}),0))}function vr(n){$.U&&(Zi=n.ctrlKey)}function pr(){nn({U:!1}),Zi=!1}function hr(n){mr()}function gr(n){Ve(Gi,O)&&!Ve(Gi,k)||mr()}function mr(){Gi&&(Gi.focus(),Gi=null)}function wr(n){return[].slice.call(Se('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], summary:not([disabled]), [contenteditable]',n)).filter((function(n){return"-1"!==_e(n,"tabindex")&&null!==n.offsetParent}))}f.moveSlideLeft=or,f.moveSlideRight=ar,f.moveTo=sr,Bn.un(Kn,(function(){Je("blur",pr),Qe("keydown",dr),Qe("keyup",vr),Bn.un(qn,fr),Bn.un(ft,hr),Bn.un(st,gr)}));var br=(new Date).getTime(),Sr=[];function yr(n){n?(function(){var n,t="";o.addEventListener?n="addEventListener":(n="attachEvent",t="on");var e="onwheel"in a.createElement("div")?"wheel":void 0!==a.onmousewheel?"mousewheel":"DOMMouseScroll",i=Ai();"DOMMouseScroll"==e?a[n](t+"MozMousePixelScroll",Mr,i):a[n](t+e,Mr,i)}(),_().addEventListener("mousedown",Tr),_().addEventListener("mouseup",Ar)):(a.addEventListener?(Ke("mousewheel",Mr,!1),Ke("wheel",Mr,!1),Ke("MozMousePixelScroll",Mr,!1)):a.detachEvent("onmousewheel",Mr),_().removeEventListener("mousedown",Tr),_().removeEventListener("mouseup",Ar))}function Mr(n){var t=(new Date).getTime(),e=Me(Se(".fp-completely")[0],"fp-normal-scroll"),i=function(n,t){(new Date).getTime();var e=tn().N&&n.getBoundingClientRect().bottom>=0&&"up"===Ri.Fn(),i=tn().Vn;if(i)return Xe(t),!1;if(tn().N){if(e){var r;if(!(i||Hi("isNewKeyframe","beyondFullpage")&&Ri.Wn()))return(r=Sn(si(tn().j).item.offsetTop+si(tn().j).item.offsetHeight)).element.scrollTo(0,r.options),nn({Vn:!1}),Xe(t),!1;if(Ri.Wn())return e=!1,nn({Vn:!0}),nn({D:"wheel"}),zi(),Xe(t),!1}else Hi("set","beyondFullpage",1e3);if(!i&&!e)return!0}}(_(),n);if($.Y||nn({G:!1,Y:!0,Z:"none"}),!mt().m.down&&!mt().m.up)return Xe(n),!1;if(i)return!0;if(!1===i)return Xe(n),!1;if(Q().autoScrolling&&!Zi&&!e){var r=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,a=Math.max(-1,Math.min(1,r)),u=void 0!==n.wheelDeltaX||void 0!==n.deltaX,l=Math.abs(n.wheelDeltaX)0?"up":"none";Sr.length>149&&Sr.shift(),Sr.push(Math.abs(r)),Xe(n);var s=t-br;return br=t,s>200&&(Sr=[]),nn({B:c}),$.canScroll&&!an()&&fi(Sr,10)>=fi(Sr,70)&&l&&(nn({D:"wheel"}),Vi(a<0?"down":"up")),!1}Q().fitToSection&&nn({V:!1})}function Tr(n){var t;2==n.which&&(t=n.pageY,Wi=t,_().addEventListener("mousemove",Fi))}function Ar(n){2==n.which&&_().removeEventListener("mousemove",Fi)}function xr(n){n?(yr(!0),function(){if(Ji.Bn&&(u||c)&&(!rn("dragAndMove")||"mouseonly"===Q().dragAndMove)){Q().autoScrolling&&(jn.removeEventListener(Ji.Bn,ir,{passive:!1}),jn.addEventListener(Ji.Bn,ir,{passive:!1}));var n=Q().touchWrapper;n.removeEventListener(Ji.Gn,$i),n.removeEventListener(Ji.Bn,Ki,{passive:!1}),n.addEventListener(Ji.Gn,$i),n.addEventListener(Ji.Bn,Ki,{passive:!1})}}()):(yr(!1),function(){if(Ji.Bn&&(u||c)){Q().autoScrolling&&(jn.removeEventListener(Ji.Bn,Ki,{passive:!1}),jn.removeEventListener(Ji.Bn,ir,{passive:!1}));var n=Q().touchWrapper;n.removeEventListener(Ji.Gn,$i),n.removeEventListener(Ji.Bn,Ki,{passive:!1})}}())}f.setMouseWheelScrolling=yr;var Or=!0;function kr(){["mouseenter","touchstart","mouseleave","touchend"].forEach((function(n){Ke(n,Rr,!0)}))}function Er(n,t){document["fp_"+n]=t,Qe(n,Rr,!0)}function Rr(n){var t=n.type,e=!1,i="mouseleave"===t?n.toElement||n.relatedTarget:n.target;i!=document&&i?("touchend"===t&&(Or=!1,setTimeout((function(){Or=!0}),800)),("mouseenter"!==t||Or)&&(Q().normalScrollElements.split(",").forEach((function(n){if(!e){var t=ti(i,n),r=Ve(i,n);(t||r)&&(f.shared._n||xr(!1),f.shared._n=!0,e=!0)}})),!e&&f.shared._n&&(xr(!0),f.shared._n=!1))):xr(!0)}function jr(n,t){En(0,"internal"),sr(n,t),En(J().scrollingSpeed,"internal")}Bn.un(Kn,(function(){Q().normalScrollElements&&(["mouseenter","touchstart"].forEach((function(n){Er(n,!1)})),["mouseleave","touchend"].forEach((function(n){Er(n,!0)}))),Bn.un(qn,kr)})),f.silentMoveTo=jr;var Lr,zr,Dr=Te(),Nr=Ae(),Pr=!1;function Hr(){clearTimeout(Lr),clearTimeout(zr),qe("resize",Cr)}function Cr(){Pr||(Q().autoScrolling&&!Q().scrollBar||!Q().fitToSection)&&Wr(Te()),function(){if(u)for(var n=0;n<4;n++)zr=setTimeout((function(){window.requestAnimationFrame((function(){Q().autoScrolling&&!Q().scrollBar&&(nn({C:!0}),jr($.L.index()+1),nn({C:!1}))}))}),200*n)}(),Pr=!0,clearTimeout(Lr),Lr=setTimeout((function(){!function(){if(nn({C:!0}),Wr(""),ni(_(),"onResize"),Q().autoScrolling||$.N||function(){if(!Q().autoScrolling||Q().scrollBar){var n=.01*o.innerHeight;a.documentElement.style.setProperty("--vh","".concat(n,"px"))}}(),Bn.ln($n),Rt(),oe(),u){var n=a.activeElement;if(!ti(n,"textarea")&&!ti(n,"input")&&!ti(n,"select")){var t=Te();Math.abs(t-Dr)>20*Math.max(Dr,t)/100&&(Ir(!0),Dr=t)}}else e=Te(),i=Ae(),$._===e&&Nr===i||(nn({_:e}),Nr=i,Ir(!0));var e,i;ni(_(),"onResizeEnds"),nn({C:!1})}(),Pr=!1}),400)}function Ir(n){if(!Me(_(),g)){nn({C:!0,_:Te(),Qn:Ae()});for(var t=tn().j,e=0;e1&&yt(r,i.activeSlide.item)}Q().scrollOverflow&&ge.bn();var u=tn().L.index();$.N||!u||rn("fadingEffect")||rn("dropEffect")||rn("waterEffect")||jr(u+1),nn({C:!1}),$e(Q().afterResize)&&n&&Q().afterResize.call(_(),o.innerWidth,o.innerHeight),$e(Q().afterReBuild)&&!n&&Q().afterReBuild.call(_()),ni(_(),"afterRebuild")}}function Wr(n){tn().j.forEach((function(t){var e=""!==n||rn("offsetSections")?ln(t.item):"";xe(t.item,{height:e})}))}function Fr(){var n,t,e=o.location.hash;if(e.length){var i=e.replace("#","").split("/"),r=e.indexOf("#/")>-1;n=r?"/"+i[1]:decodeURIComponent(i[0]);var a=r?i[2]:i[1];a&&a.length&&(t=decodeURIComponent(a))}return{section:n,pn:t}}function Vr(){qe("hashchange",Zr)}function Zr(){if(!$.I&&!Q().lockAnchors){var n=Fr(),t=n.section,e=n.pn,i=void 0===$.W,r=void 0===$.W&&void 0===e&&!$.H;t&&t.length&&(t&&t!==$.W&&!i||r&&!an()||!$.H&&$.F!=e&&!an())&&Bn.ln(tt,{Xn:t,slideAnchor:e})}}function Br(n){var t=n.target;Ve(t,Q().menu+" [data-menuanchor]")&&Gr.call(t,n.e)}function Gr(n){if(nn({D:"menu"}),Se(Q().menu)[0]&&(Q().lockAnchors||!Q().anchors.length)){Xe(n);var t=Ve(this,"[data-menuanchor]");Bn.ln(it,{anchor:_e(t,"data-menuanchor")})}}function Yr(n){var t=n.target;t&&Ve(t,"#fp-nav a")?Gt.call(t,n.e):ti(t,".fp-tooltip")?Zt.call(t):(ti(t,C)||null!=Ve(t,C))&&dt.call(t,n.e)}f.reBuild=Ir,Bn.un(Kn,(function(){Cr(),Je("resize",Cr),Bn.un(qn,Hr)})),f.setLockAnchors=function(n){Q().lockAnchors=n},Bn.un(Kn,(function(){Je("hashchange",Zr),Bn.un(qn,Vr)})),Bn.un(Kn,(function(){Qe("wheel",Ri.In,Ai()),Bn.un(at,ji),Bn.un(et,Li)})),Bn.un(Kn,(function(){Bn.un(Un,Br)})),Bn.un(Kn,(function(){Bn.un(Un,Yr)}));var Ur,Xr,_r=0;function Qr(n){var t,e,i,r,o;if(ni(_(),"onScroll"),!$.C&&tn().L&&(si(tn().j),!tn().N&&!tn().Vn&&(!Q().autoScrolling||Q().scrollBar||rn("dragAndMove"))&&!un())){var a=rn("dragAndMove")?Math.abs(on("dragAndMove","getCurrentScroll")):Ye(),u=function(n){var t=n>_r?"down":"up";return _r=n,nn({X:n}),t}(a),l=0,c=a+Te()/2,s=(rn("dragAndMove")?on("dragAndMove","getDocumentHeight"):jn.scrollHeight-Te())===a,f=tn().j;if(nn({scrollY:a}),s)l=f.length-1;else if(a)for(var d=0;d=Ye()+Te():r<=Ye())&&(Me(tn().L.item,S)||(Ne(tn().L.item,S),Pe(Ue(tn().L.item),S))),e=(t=f[l]).item,!t.isActive){nn({I:!0});var v,p,h=tn().L.item,g=tn().L.index()+1,m=Tn(tn().L,e),b=t.anchor,y=t.index()+1,T=t.activeSlide,A={L:h,sectionIndex:y-1,anchorLink:b,element:e,leavingSection:g,direction:m,items:{origin:tn().L,destination:t}};if(T&&(p=T.anchor,v=T.index()),$.canScroll)Pe(f.filter((function(n){return n.index()!==t.index()})).map((function(n){return n.item})),w),Ne(e,w),on("parallax","afterLoad"),$e(Q().beforeLeave)&&$t("beforeLeave",A),$e(Q().onLeave)&&Ct("onLeave",A),$e(Q().afterLoad)&&Ct("afterLoad",A),on("resetSliders","apply",{localIsResizing:$.C,leavingSection:g}),Hn(h),Cn(e),Nn(e),Yt(b,y-1),Q().anchors.length&&nn({W:b}),Rt(),Fn(v,p,b);clearTimeout(Ur),Ur=setTimeout((function(){nn({I:!1})}),100)}Q().fitToSection&&$.canScroll&&(clearTimeout(Xr),Xr=setTimeout((function(){$.j.filter((function(n){var t=n.item.getBoundingClientRect();return Math.round(t.bottom)===Math.round(Te())||0===Math.round(t.top)})).length||re()}),Q().A))}}function Jr(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){gt(n,t,"k")})):(gt(n,"all","k"),Q().keyboardScrolling=n)}function Kr(n){var t=n.index();void 0!==Q().anchors[t]&&n.isActive&&Yt(Q().anchors[t],t),Q().menu&&Q().css3&&null!=Ve(Se(Q().menu)[0],v)&&Se(Q().menu).forEach((function(n){jn.appendChild(n)}))}function qr(){var n,t,e=tn().L,i=tn().L.item;Ne(i,S),Cn(i),Vt(),Nn(i),t=ur((n=Fr()).section),n.section&&t&&(void 0===t||t.index()!==Re(se))||!$e(Q().afterLoad)||Ct("afterLoad",{L:i,element:i,direction:null,anchorLink:e.anchor,sectionIndex:e.index(),items:{origin:tn().L,destination:tn().L}}),$e(Q().afterRender)&&Ct("afterRender"),ni(_(),"afterRender")}function $r(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){gt(n,t,"m")})):gt(n,"all","m"),ni(_(),"setAllowScrolling",{value:n,Jn:t})}function no(){var n=Fr(),t=n.section,e=n.pn;t?Q().animateAnchor?cr(t,e):jr(t,e):Bn.ln(Yn,null)}Bn.un(qn,(function(){clearTimeout(Ur),clearTimeout(Xr)})),Bn.un(Kn,(function(){Je("scroll",Qr),a.body.addEventListener("scroll",Qr),Bn.un(tt,(function(n){cr(n.Xn,n.slideAnchor)})),Bn.un(it,(function(n){sr(n.anchor,void 0)})),Bn.un(nt,(function(n){("down"===n.direction?Ci:Ii)()})),Bn.un(rt,(function(n){ne(n.destination)}))})),Bn.un(qn,(function(){qe("scroll",Qr)})),f.getActiveSlide=function(){return Ht(tn().L.activeSlide)},f.getScrollX=function(){return $.scrollX},Bn.un(Kn,(function(){Bn.un(qn,At),Bn.un(ot,(function(n){yt(n.slides,n.destination)})),Bn.un(_n,(function(n){ar(n.section)})),Bn.un(Xn,(function(n){or(n.section)}))})),Bn.un(Kn,(function(){var n=Q().credits.position,t=["left","right"].indexOf(n)>-1?"".concat(n,": 0;"):"",e='\n \n "),i=si($.j),r=!$.Kn||Q().credits.enabled;i&&i.item&&r&&i.item.insertAdjacentHTML("beforeend",e)})),function(){Bn.un(Qn,(function(){var t,u,l;nn({Kn:(Q().licenseKey,t=Q().licenseKey,u=function(t){var e=parseInt("514").toString(16);if(!t||t.length<29||4===t.split(n[0]).length)return null;var i=["Each","for"][r()]().join(""),u=t[["split"]]("-"),l=[];u[i]((function(n,t){if(t<4){var i=function(n){var t=n[n.length-1],e=["NaN","is"][r()]().join("");return window[e](t)?o(t):function(n){return n-w.length}(t)}(n);l.push(i);var a=o(n[i]);if(1===t){var u=["pa","dS","t","art"].join("");a=a.toString()[u](2,"0")}e+=a,0!==t&&1!==t||(e+="-")}}));var c=0,s="";return t.split("-").forEach((function(n,t){if(t<4){for(var e=0,i=0;i<4;i++)i!==l[t]&&(e+=Math.abs(o(n[i])),isNaN(n[i])||c++);var r=a(e);s+=r}})),s+=a(c),{qn:new Date(e+"T00:00"),$n:e.split("-")[2]===8*(w.length-2)+"",nt:s}}(t),l=function(n){var t=i[r()]().join("");return n&&0===t.indexOf(n)&&n.length===t.length}(t),(u||l)&&(u&&e<=u.qn&&u.nt===t.split(n[0])[4]||l||u.$n)||!1)})}));var n=["-"],t="2024-5-20".split("-"),e=new Date(t[0],t[1],t[2]),i=["se","licen","-","v3","l","gp"];function r(){return[["re","verse"].join("")]["".length]}function o(n){return n?isNaN(n)?n.charCodeAt(0)-72:n:""}function a(n){var t=72+n;return t>90&&t<97&&(t+=15),String.fromCharCode(t).toUpperCase()}}(),Bn.un(Jn,(function(){Jr(!0)})),f.setKeyboardScrolling=Jr,f.shared.tt=qr,f.setAllowScrolling=$r;var to={};function eo(){return to}var io,ro,oo,ao,uo=!Me(jn,sn("OHNsd3AtZnVsbHBhZ2UtanM5T20="));function lo(n){if(ro=a.createElement("div"),io=sn("MTIzPGRpdj48YSBocmVmPSJodHRwOi8vYWx2YXJvdHJpZ28uY29tL2Z1bGxQYWdlL2V4dGVuc2lvbnMvIiBzdHlsZT0iY29sb3I6ICNmZmYgIWltcG9ydGFudDsgdGV4dC1kZWNvcmF0aW9uOm5vbmUgIWltcG9ydGFudDsiPlVubGljZW5zZWQgZnVsbFBhZ2UuanMgRXh0ZW5zaW9uPC9hPjwvZGl2PjEyMw=="),uo||(io=io.replace("extensions/","").replace("Extension","")),ro.innerHTML=io,ro=ro.firstChild,"MutationObserver"in window&&new MutationObserver(so).observe(a.body,{childList:!0,subtree:!1}),(!uo||rn(n)&&f[n])&&(!function(n){var t=void 0!==eo()[n]&&eo()[n].length,e=[],i=!1;return De(eo()[n])?e=eo()[n]:e.push(eo()[n]),e.forEach((function(e){var r=function(){if(a.domain.length){for(var n=a.domain.replace(/^(www\.)/,"").split(".");n.length>2;)n.shift();return n.join(".").replace(/(^\.*)|(\.*$)/g,"")}return""}(),o=["MTM0bG9jYWxob3N0MjM0","MTM0MC4xMjM0","MTM0anNoZWxsLm5ldDIzNA==","UDdDQU5ZNlNN","NTY3YnVuZGxlNzg5","NTU1S2V5Nzc3","NDU2dGVzdDQ1Ng=="],u=sn(o[0]),l=sn(o[1]),c=sn(o[2]),s=sn(o[6]),f=sn(o[3]),d=sn(o[4]),v=sn(o[5]),p=void 0!==Q()[d+v];t=t||p;var h=[u,l,c,s].indexOf(r)<0&&0!==r.length;if(!t&&!p&&h)return!1;var g=t?sn(e):"",m=(g=g.split("_")).length>1&&g[1].indexOf(n,g[1].length-n.length)>-1,w=g.length>1&&g[1].toLowerCase().indexOf(d)>-1,b=g[0].indexOf(r,g[0].length-r.length)<0,S=m||w;i=i||!(b&&h&&f!=g[0])&&S||!h})),i}(n)||!uo)){co();var t=sn("MzQ1c2V0SW50ZXJ2YWwxMjM=");window[t](co,2e3)}}function co(){ro&&(ao||(Math.random()<.5?cn(jn,ro):He(ro,jn),ao=!0),ro.setAttribute("style",sn("MTIzei1pbmRleDo5OTk5OTk5O3Bvc2l0aW9uOmZpeGVkO3RvcDoyMHB4O2JvdHRvbTphdXRvO2xlZnQ6MjBweDtyaWdodDphdXRvO2JhY2tncm91bmQ6cmVkO3BhZGRpbmc6N3B4IDE1cHg7Zm9udC1zaXplOjE0cHg7Zm9udC1mYW1pbHk6YXJpYWw7Y29sb3I6I2ZmZjtkaXNwbGF5OmlubGluZS1ibG9jazt0cmFuc2Zvcm06dHJhbnNsYXRlM2QoMCwwLDApO29wYWNpdHk6MTtoZWlnaHQ6YXV0bzt3aWR0aDphdXRvO3pvb206MTttYXJnaW46YXV0bztib3JkZXI6bm9uZTt2aXNpYmlsaXR5OnZpc2libGU7Y2xpcC1wYXRoOm5vbmU7MTIz").replace(/;/g,sn("MTIzICFpbXBvcnRhbnQ7MzQ1"))))}function so(n){n.forEach((function(n){if(n.removedNodes[0]&&n.removedNodes[0].isEqualNode(ro)){clearTimeout(oo);var t=sn("bDIwc2V0VGltZW91dDAzbA==");oo=window[t](fo,900)}}))}function fo(){ao=!1}function vo(){jt(),Rt(),Q().scrollBar=Q().scrollBar||Q().hybrid,q(),function(){xe(vi(_(),"body"),{height:"100%",position:"relative"}),Ne(_(),d),Ne(Ln,m),nn({_:Te()}),Pe(_(),g),wi(),on("parallax","init");for(var n=tn().tn,t=0;t0&&bi(e)}Q().fixedElements&&Q().css3&&Se(Q().fixedElements).forEach((function(n){jn.appendChild(n)})),Q().navigation&&Bt(),Se('iframe[src*="youtube.com/embed/"]',_()).forEach((function(n){var t,e;e=_e(t=n,"src"),t.setAttribute("src",e+(/\?/.test(e)?"&":"?")+"enablejsapi=1")})),on("fadingEffect","apply"),on("waterEffect","init"),on("dropEffect","init"),on("cards","init"),Q().scrollOverflow&&ge.bn()}(),$r(!0),xr(!0),Wt(Q().autoScrolling,"internal"),oe(),In(),"complete"===a.readyState&&no(),Je("load",no),qr(),uo||lo("l"),jt(),Rt()}function po(){var n=Q().licenseKey;""===Q().licenseKey.trim()?(me("error","Fullpage.js requires a `licenseKey` option. Read about it on the following URL:"),me("error","https://github.com/alvarotrigo/fullPage.js#options")):Q()&&$.Kn||a.domain.indexOf("alvarotrigo.com")>-1?n&&n.length:(me("error","Incorrect `licenseKey`. Get one for fullPage.js version 4 here:"),me("error","https://alvarotrigo.com/fullPage/pricing")),Me(Ln,m)?me("error","Fullpage.js can only be initialized once and you are doing it multiple times!"):(Q().continuousVertical&&(Q().loopTop||Q().loopBottom)&&(Q().continuousVertical=!1,me("warn","Option `loopTop/loopBottom` is mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),!Q().scrollOverflow||!Q().scrollBar&&Q().autoScrolling||me("warn","Options scrollBar:true and autoScrolling:false are mutually exclusive with scrollOverflow:true. Sections with scrollOverflow might not work well in Firefox"),!Q().continuousVertical||!Q().scrollBar&&Q().autoScrolling||(Q().continuousVertical=!1,me("warn","Scroll bars (`scrollBar:true` or `autoScrolling:false`) are mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),Q().anchors.forEach((function(n){var t=[].slice.call(Se("[name]")).filter((function(t){return _e(t,"name")&&_e(t,"name").toLowerCase()==n.toLowerCase()})),e=[].slice.call(Se("[id]")).filter((function(t){return _e(t,"id")&&_e(t,"id").toLowerCase()==n.toLowerCase()}));if(e.length||t.length){me("error","data-anchor tags can not have the same value as any `id` element on the site (or `name` element for IE).");var i=e.length?"id":"name";(e.length||t.length)&&me("error",'"'+n+'" is is being used by another element `'+i+"` property")}})))}function ho(){return{options:Q(),internals:{container:_(),canScroll:$.canScroll,isScrollAllowed:mt(),getDestinationPosition:te,isTouch:c,c:lo,getXmovement:Tt,removeAnimation:An,getTransforms:xn,lazyLoad:Cn,addAnimation:Mn,performHorizontalMove:Mt,landscapeScroll:yt,silentLandscapeScroll:Ot,keepSlidesPosition:Ft,silentScroll:kn,styleSlides:bi,styleSection:fe,scrollHandler:Qr,getEventsPage:tr,getMSPointer:er,isReallyTouch:qi,usingExtension:rn,toggleControlArrows:bt,touchStartHandler:$i,touchMoveHandler:Ki,nullOrSection:Pt,items:{SectionPanel:Dt,SlidePanel:Nt,Item:dn},getVisible:be,getState:tn,updateState:Rt,updateStructuralState:jt,activeSlidesNavigation:vt,getPanels:function(){return $.rn},getSections:function(){return $.j},setActiveSection:function(n){$.L=n}}}}function go(n){var t=["NTY3YnVuZGxlNzg5","NTU1S2V5Nzc3"],e=sn(t[0]),i=sn(t[1]),r=void 0!==Q()[e+i],o="fp_"+n+"Extension";eo()[n]=r?Q()[e+i]:Q()[n+i],f[n]=void 0!==window[o]?new window[o]:null,f[n]&&f[n].c(n)}function mo(n,t){var e;if(jn=Se("body")[0],Ln=Se("html")[0],zn=Se("html, body"),!Me(Ln,m))return"touchWrapper",e="string"==typeof n?Se(n)[0]:n,B.touchWrapper=e,function(n){X=ye({},B,n),U=Object.assign({},X)}(t),function(n){G=n}("string"==typeof n?Se(n)[0]:n),Bn.ln(Qn),po(),f.getFullpageData=ho,f.version="4.0.23",f.test=Object.assign(f.test,{top:"0px",on:"translate3d(0px, 0px, 0px)",cn:function(){for(var n=[],t=0;t.fp-overflow{overflow-y:auto}.fp-overflow{outline:0}.fp-overflow.fp-table{display:block}.fp-responsive .fp-auto-height-responsive .fp-slide,.fp-responsive .fp-auto-height-responsive.fp-section{height:auto!important;min-height:auto!important}.fp-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fp-scroll-mac .fp-overflow::-webkit-scrollbar{background-color:transparent;width:9px}.fp-scroll-mac .fp-overflow::-webkit-scrollbar-track{background-color:transparent}.fp-scroll-mac .fp-overflow::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.4);border-radius:16px;border:4px solid transparent}.fp-warning,.fp-watermark{z-index:9999999;position:absolute;bottom:0}.fp-warning,.fp-watermark a{text-decoration:none;color:#000;background:rgba(255,255,255,.6);padding:5px 8px;font-size:14px;font-family:arial;color:#000;display:inline-block;border-radius:3px;margin:12px}.fp-noscroll .fp-overflow{overflow:hidden} + */.fp-enabled body,html.fp-enabled{margin:0;padding:0;overflow:hidden;-webkit-tap-highlight-color:rgba(0,0,0,0)}.fp-section{position:relative;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;height:100%;display:block}.fp-slide{float:left}.fp-slide,.fp-slidesContainer{height:100%;display:block}.fp-slides{z-index:1;height:100%;overflow:hidden;position:relative;-webkit-transition:all .3s ease-out;transition:all .3s ease-out}.fp-table{display:flex;flex-direction:column;justify-content:center;width:100%}.fp-slidesContainer{float:left;position:relative}.fp-controlArrow{-webkit-user-select:none;-moz-user-select:none;-khtml-user-select:none;-ms-user-select:none;position:absolute;z-index:4;top:50%;cursor:pointer;margin-top:-38px;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.fp-prev{left:15px}.fp-next{right:15px}.fp-arrow{width:0;height:0;border-style:solid}.fp-arrow.fp-prev{border-width:38.5px 34px 38.5px 0;border-color:transparent #fff transparent transparent}.fp-arrow.fp-next{border-width:38.5px 0 38.5px 34px;border-color:transparent transparent transparent #fff}.fp-notransition{-webkit-transition:none!important;transition:none!important}#fp-nav{position:fixed;z-index:100;top:50%;opacity:1;transform:translateY(-50%);-ms-transform:translateY(-50%);-webkit-transform:translate3d(0,-50%,0)}#fp-nav.fp-right{right:17px}#fp-nav.fp-left{left:17px}.fp-slidesNav{position:absolute;z-index:4;opacity:1;-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);transform:translate3d(0,0,0);left:0!important;right:0;margin:0 auto!important}.fp-slidesNav.fp-bottom{bottom:17px}.fp-slidesNav.fp-top{top:17px}#fp-nav ul,.fp-slidesNav ul{margin:0;padding:0}#fp-nav ul li,.fp-slidesNav ul li{display:block;width:14px;height:13px;margin:7px;position:relative}.fp-slidesNav ul li{display:inline-block}#fp-nav ul li a,.fp-slidesNav ul li a{display:block;position:relative;z-index:1;width:100%;height:100%;cursor:pointer;text-decoration:none}#fp-nav ul li a.active span,#fp-nav ul li:hover a.active span,.fp-slidesNav ul li a.active span,.fp-slidesNav ul li:hover a.active span{height:12px;width:12px;margin:-6px 0 0 -6px;border-radius:100%}#fp-nav ul li a span,.fp-slidesNav ul li a span{border-radius:50%;position:absolute;z-index:1;height:4px;width:4px;border:0;background:#333;left:50%;top:50%;margin:-2px 0 0 -2px;-webkit-transition:all .1s ease-in-out;-moz-transition:all .1s ease-in-out;-o-transition:all .1s ease-in-out;transition:all .1s ease-in-out}#fp-nav ul li:hover a span,.fp-slidesNav ul li:hover a span{width:10px;height:10px;margin:-5px 0 0 -5px}#fp-nav ul li .fp-tooltip{position:absolute;top:-2px;color:#fff;font-size:14px;font-family:arial,helvetica,sans-serif;white-space:nowrap;max-width:220px;overflow:hidden;display:block;opacity:0;width:0;cursor:pointer}#fp-nav ul li:hover .fp-tooltip,#fp-nav.fp-show-active a.active+.fp-tooltip{-webkit-transition:opacity .2s ease-in;transition:opacity .2s ease-in;width:auto;opacity:1}#fp-nav ul li .fp-tooltip.fp-right{right:20px}#fp-nav ul li .fp-tooltip.fp-left{left:20px}.fp-auto-height .fp-slide,.fp-auto-height.fp-section{height:auto!important}.fp-responsive .fp-is-overflow.fp-section{height:auto!important}.fp-scrollable .fp-section,.fp-scrollable .fp-slide,.fp-scrollable.fp-responsive .fp-is-overflow.fp-section{height:100vh;height:calc(var(--vh,1vh) * 100)}.fp-scrollable .fp-section:not(.fp-auto-height):not([data-percentage]),.fp-scrollable .fp-slide:not(.fp-auto-height):not([data-percentage]),.fp-scrollable.fp-responsive .fp-is-overflow.fp-section:not(.fp-auto-height):not([data-percentage]){min-height:100vh;min-height:calc(var(--vh,1vh) * 100)}.fp-overflow{justify-content:flex-start;max-height:100vh}.fp-scrollable .fp-auto-height .fp-overflow{max-height:none}.fp-is-overflow .fp-overflow.fp-auto-height,.fp-is-overflow .fp-overflow.fp-auto-height-responsive,.fp-is-overflow>.fp-overflow{overflow-y:auto}.fp-overflow{outline:0}.fp-overflow.fp-table{display:block}.fp-responsive .fp-auto-height-responsive .fp-overflow,.fp-responsive .fp-auto-height-responsive .fp-slide,.fp-responsive .fp-auto-height-responsive.fp-section{height:auto!important;min-height:auto!important}.fp-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.fp-scroll-mac .fp-overflow::-webkit-scrollbar{background-color:transparent;width:9px}.fp-scroll-mac .fp-overflow::-webkit-scrollbar-track{background-color:transparent}.fp-scroll-mac .fp-overflow::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.4);border-radius:16px;border:4px solid transparent}.fp-warning,.fp-watermark{z-index:9999999;position:absolute;bottom:0}.fp-warning,.fp-watermark a{text-decoration:none;color:#000;background:rgba(255,255,255,.6);padding:5px 8px;font-size:14px;font-family:arial;color:#000;display:inline-block;border-radius:3px;margin:12px}.fp-noscroll .fp-overflow{overflow:hidden} /*# sourceMappingURL=fullpage.min.css.map */ diff --git a/dist/fullpage.min.css.map b/dist/fullpage.min.css.map index 15b25e520..8cb804250 100644 --- a/dist/fullpage.min.css.map +++ b/dist/fullpage.min.css.map @@ -1 +1 @@ -{"version":3,"sources":["fullpage.css"],"names":[],"mappings":"AAAA;;;;;;;;;AAWA,iBADA,gBAEI,OAAQ,EACR,QAAS,EACT,SAAS,OAGT,4BAA6B,cAEjC,YACI,SAAU,SACV,mBAAoB,WACpB,gBAAiB,WACjB,WAAY,WACZ,OAAQ,KACR,QAAS,MAEb,UACI,MAAO,KAEX,UAAW,oBACP,OAAQ,KACR,QAAS,MAEb,WACI,QAAQ,EACR,OAAQ,KACR,SAAU,OACV,SAAU,SACV,mBAAoB,IAAI,IAAK,SAC7B,WAAY,IAAI,IAAK,SAEzB,UACI,QAAS,KACT,eAAgB,OAChB,gBAAiB,OACjB,MAAO,KAEX,oBACI,MAAO,KACP,SAAU,SAEd,iBACI,oBAAqB,KACrB,iBAAkB,KAClB,mBAAoB,KACpB,gBAAiB,KACjB,SAAU,SACV,QAAS,EACT,IAAK,IACL,OAAQ,QACR,WAAY,MACZ,kBAAmB,mBACnB,cAAe,mBACf,UAAW,mBAEf,SACI,KAAM,KAEV,SACI,MAAO,KAEX,UACI,MAAO,EACP,OAAQ,EACR,aAAc,MAElB,kBACI,aAAc,OAAO,KAAK,OAAO,EACjC,aAAc,YAAY,KAAK,YAAY,YAE/C,kBACI,aAAc,OAAO,EAAE,OAAO,KAC9B,aAAc,YAAY,YAAY,YAAY,KAEtD,iBACI,mBAAoB,eACpB,WAAY,eAEhB,QACI,SAAU,MACV,QAAS,IACT,IAAK,IACL,QAAS,EACT,UAAW,iBACX,cAAe,iBACf,kBAAmB,sBAEvB,iBACI,MAAO,KAEX,gBACI,KAAM,KAEV,cACI,SAAU,SACV,QAAS,EACT,QAAS,EACT,kBAAmB,mBACnB,cAAe,mBACf,UAAW,mBACX,KAAM,YACN,MAAO,EACP,OAAQ,EAAE,eAEd,wBACI,OAAQ,KAEZ,qBACI,IAAK,KAET,WACA,iBACE,OAAQ,EACR,QAAS,EAEX,cACA,oBACI,QAAS,MACT,MAAO,KACP,OAAQ,KACR,OAAQ,IACR,SAAS,SAEb,oBACI,QAAS,aAEb,gBACA,sBACI,QAAS,MACT,SAAU,SACV,QAAS,EACT,MAAO,KACP,OAAQ,KACR,OAAQ,QACR,gBAAiB,KAErB,4BAEA,kCADA,kCAEA,wCACI,OAAQ,KACR,MAAO,KACP,OAAQ,KAAK,EAAE,EAAE,KACjB,cAAe,KAEnB,qBACA,2BACI,cAAe,IACf,SAAU,SACV,QAAS,EACT,OAAQ,IACR,MAAO,IACP,OAAQ,EACR,WAAY,KACZ,KAAM,IACN,IAAK,IACL,OAAQ,KAAK,EAAE,EAAE,KACjB,mBAAoB,IAAI,IAAK,YAC7B,gBAAiB,IAAI,IAAK,YAC1B,cAAe,IAAI,IAAK,YACxB,WAAY,IAAI,IAAK,YAEzB,2BACA,iCACI,MAAO,KACP,OAAQ,KACR,OAAQ,KAAK,EAAI,EAAI,KAEzB,0BACI,SAAU,SACV,IAAK,KACL,MAAO,KACP,UAAW,KACX,YAAa,KAAK,CAAE,SAAS,CAAE,WAC/B,YAAa,OACb,UAAW,MACX,SAAU,OACV,QAAS,MACT,QAAS,EACT,MAAO,EACP,OAAQ,QAEZ,gCACA,4CACI,mBAAoB,QAAQ,IAAK,QACjC,WAAY,QAAQ,IAAK,QACzB,MAAO,KACP,QAAS,EAEb,mCACI,MAAO,KAEX,kCACI,KAAM,KAGV,0BADA,2BAEI,OAAQ,eAGZ,0CACI,OAAQ,eAKZ,2BACA,yBAFA,wDAIG,OAAQ,MACR,OAAQ,0BAIX,uEACA,qEAFA,oGAII,WAAY,MACZ,WAAY,0BAIhB,aACI,gBAAiB,WACjB,WAAY,MAIhB,4CACI,WAAY,KAIhB,4CADA,uDAEA,6BACI,WAAY,KAEhB,aACI,QAAQ,EAGZ,sBACI,QAAS,MAIb,oDADA,qDAEI,OAAQ,eACR,WAAY,eAIhB,YACI,SAAU,SACV,MAAO,IACP,OAAQ,IACR,QAAS,EACT,SAAU,OACV,KAAM,cACN,YAAa,OACb,OAAQ,EAKZ,+CACI,iBAAkB,YAClB,MAAO,IAEX,qDACI,iBAAkB,YAEtB,qDACI,iBAAkB,eAClB,cAAe,KACf,OAAQ,IAAI,MAAM,YAEtB,YACA,cACI,QAAS,QACT,SAAU,SACV,OAAQ,EAEZ,YACA,gBACI,gBAAiB,KACjB,MAAO,KACP,WAAY,qBACZ,QAAS,IAAI,IACb,UAAW,KACX,YAAa,MACb,MAAO,KACP,QAAS,aACT,cAAe,IACf,OAAQ,KAEZ,0BACI,SAAU","file":"fullpage.min.css","sourcesContent":["/*!\r\n * fullPage 4.0.22\r\n * https://github.com/alvarotrigo/fullPage.js\r\n *\r\n * @license GPLv3 for open source use only\r\n * or Fullpage Commercial License for commercial use\r\n * http://alvarotrigo.com/fullPage/pricing/\r\n *\r\n * Copyright (C) 2021 http://alvarotrigo.com/fullPage - A project by Alvaro Trigo\r\n */\r\nhtml.fp-enabled,\r\n.fp-enabled body {\r\n margin: 0;\r\n padding: 0;\r\n overflow:hidden;\r\n\r\n /*Avoid flicker on slides transitions for mobile phones #336 */\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n}\r\n.fp-section {\r\n position: relative;\r\n -webkit-box-sizing: border-box; /* Safari<=5 Android<=3 */\r\n -moz-box-sizing: border-box; /* <=28 */\r\n box-sizing: border-box;\r\n height: 100%;\r\n display: block;\r\n}\r\n.fp-slide {\r\n float: left;\r\n}\r\n.fp-slide, .fp-slidesContainer {\r\n height: 100%;\r\n display: block;\r\n}\r\n.fp-slides {\r\n z-index:1;\r\n height: 100%;\r\n overflow: hidden;\r\n position: relative;\r\n -webkit-transition: all 0.3s ease-out; /* Safari<=6 Android<=4.3 */\r\n transition: all 0.3s ease-out;\r\n}\r\n.fp-table{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n width: 100%;\r\n}\r\n.fp-slidesContainer {\r\n float: left;\r\n position: relative;\r\n}\r\n.fp-controlArrow {\r\n -webkit-user-select: none; /* webkit (safari, chrome) browsers */\r\n -moz-user-select: none; /* mozilla browsers */\r\n -khtml-user-select: none; /* webkit (konqueror) browsers */\r\n -ms-user-select: none; /* IE10+ */\r\n position: absolute;\r\n z-index: 4;\r\n top: 50%;\r\n cursor: pointer;\r\n margin-top: -38px;\r\n -webkit-transform: translate3d(0,0,0);\r\n -ms-transform: translate3d(0,0,0);\r\n transform: translate3d(0,0,0);\r\n}\r\n.fp-prev{\r\n left: 15px;\r\n}\r\n.fp-next{\r\n right: 15px;\r\n}\r\n.fp-arrow{\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n}\r\n.fp-arrow.fp-prev {\r\n border-width: 38.5px 34px 38.5px 0;\r\n border-color: transparent #fff transparent transparent;\r\n}\r\n.fp-arrow.fp-next {\r\n border-width: 38.5px 0 38.5px 34px;\r\n border-color: transparent transparent transparent #fff;\r\n}\r\n.fp-notransition {\r\n -webkit-transition: none !important;\r\n transition: none !important;\r\n}\r\n#fp-nav {\r\n position: fixed;\r\n z-index: 100;\r\n top: 50%;\r\n opacity: 1;\r\n transform: translateY(-50%);\r\n -ms-transform: translateY(-50%);\r\n -webkit-transform: translate3d(0,-50%,0);\r\n}\r\n#fp-nav.fp-right {\r\n right: 17px;\r\n}\r\n#fp-nav.fp-left {\r\n left: 17px;\r\n}\r\n.fp-slidesNav{\r\n position: absolute;\r\n z-index: 4;\r\n opacity: 1;\r\n -webkit-transform: translate3d(0,0,0);\r\n -ms-transform: translate3d(0,0,0);\r\n transform: translate3d(0,0,0);\r\n left: 0 !important;\r\n right: 0;\r\n margin: 0 auto !important;\r\n}\r\n.fp-slidesNav.fp-bottom {\r\n bottom: 17px;\r\n}\r\n.fp-slidesNav.fp-top {\r\n top: 17px;\r\n}\r\n#fp-nav ul,\r\n.fp-slidesNav ul {\r\n margin: 0;\r\n padding: 0;\r\n}\r\n#fp-nav ul li,\r\n.fp-slidesNav ul li {\r\n display: block;\r\n width: 14px;\r\n height: 13px;\r\n margin: 7px;\r\n position:relative;\r\n}\r\n.fp-slidesNav ul li {\r\n display: inline-block;\r\n}\r\n#fp-nav ul li a,\r\n.fp-slidesNav ul li a {\r\n display: block;\r\n position: relative;\r\n z-index: 1;\r\n width: 100%;\r\n height: 100%;\r\n cursor: pointer;\r\n text-decoration: none;\r\n}\r\n#fp-nav ul li a.active span,\r\n.fp-slidesNav ul li a.active span,\r\n#fp-nav ul li:hover a.active span,\r\n.fp-slidesNav ul li:hover a.active span{\r\n height: 12px;\r\n width: 12px;\r\n margin: -6px 0 0 -6px;\r\n border-radius: 100%;\r\n }\r\n#fp-nav ul li a span,\r\n.fp-slidesNav ul li a span {\r\n border-radius: 50%;\r\n position: absolute;\r\n z-index: 1;\r\n height: 4px;\r\n width: 4px;\r\n border: 0;\r\n background: #333;\r\n left: 50%;\r\n top: 50%;\r\n margin: -2px 0 0 -2px;\r\n -webkit-transition: all 0.1s ease-in-out;\r\n -moz-transition: all 0.1s ease-in-out;\r\n -o-transition: all 0.1s ease-in-out;\r\n transition: all 0.1s ease-in-out;\r\n}\r\n#fp-nav ul li:hover a span,\r\n.fp-slidesNav ul li:hover a span{\r\n width: 10px;\r\n height: 10px;\r\n margin: -5px 0px 0px -5px;\r\n}\r\n#fp-nav ul li .fp-tooltip {\r\n position: absolute;\r\n top: -2px;\r\n color: #fff;\r\n font-size: 14px;\r\n font-family: arial, helvetica, sans-serif;\r\n white-space: nowrap;\r\n max-width: 220px;\r\n overflow: hidden;\r\n display: block;\r\n opacity: 0;\r\n width: 0;\r\n cursor: pointer;\r\n}\r\n#fp-nav ul li:hover .fp-tooltip,\r\n#fp-nav.fp-show-active a.active + .fp-tooltip {\r\n -webkit-transition: opacity 0.2s ease-in;\r\n transition: opacity 0.2s ease-in;\r\n width: auto;\r\n opacity: 1;\r\n}\r\n#fp-nav ul li .fp-tooltip.fp-right {\r\n right: 20px;\r\n}\r\n#fp-nav ul li .fp-tooltip.fp-left {\r\n left: 20px;\r\n}\r\n.fp-auto-height.fp-section,\r\n.fp-auto-height .fp-slide{\r\n height: auto !important;\r\n}\r\n\r\n.fp-responsive .fp-is-overflow.fp-section{\r\n height: auto !important;\r\n}\r\n\r\n/* Used with autoScrolling: false */ \r\n.fp-scrollable.fp-responsive .fp-is-overflow.fp-section,\r\n.fp-scrollable .fp-section,\r\n.fp-scrollable .fp-slide{\r\n /* Fallback for browsers that do not support Custom Properties */\r\n height: 100vh;\r\n height: calc(var(--vh, 1vh) * 100);\r\n}\r\n\r\n.fp-scrollable.fp-responsive .fp-is-overflow.fp-section:not(.fp-auto-height):not([data-percentage]),\r\n.fp-scrollable .fp-section:not(.fp-auto-height):not([data-percentage]),\r\n.fp-scrollable .fp-slide:not(.fp-auto-height):not([data-percentage]){\r\n /* Fallback for browsers that do not support Custom Properties */\r\n min-height: 100vh;\r\n min-height: calc(var(--vh, 1vh) * 100);\r\n}\r\n\r\n/* Disabling vertical centering on scrollable elements */\r\n.fp-overflow{\r\n justify-content: flex-start;\r\n max-height: 100vh;\r\n}\r\n\r\n/* No scrollable when using auto-height */\r\n.fp-scrollable .fp-auto-height .fp-overflow{\r\n max-height: none;\r\n}\r\n\r\n.fp-is-overflow .fp-overflow.fp-auto-height-responsive,\r\n.fp-is-overflow .fp-overflow.fp-auto-height,\r\n.fp-is-overflow > .fp-overflow{\r\n overflow-y: auto;\r\n}\r\n.fp-overflow{\r\n outline:none;\r\n}\r\n\r\n.fp-overflow.fp-table{\r\n display: block;\r\n}\r\n\r\n.fp-responsive .fp-auto-height-responsive.fp-section,\r\n.fp-responsive .fp-auto-height-responsive .fp-slide{\r\n height: auto !important;\r\n min-height: auto !important;\r\n}\r\n\r\n/*Only display content to screen readers*/\r\n.fp-sr-only{\r\n position: absolute;\r\n width: 1px;\r\n height: 1px;\r\n padding: 0;\r\n overflow: hidden;\r\n clip: rect(0, 0, 0, 0);\r\n white-space: nowrap;\r\n border: 0;\r\n}\r\n\r\n/* Customize website's scrollbar like Mac OS\r\nNot supports in Firefox and IE */\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar {\r\n background-color: transparent;\r\n width: 9px;\r\n}\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar-track {\r\n background-color: transparent;\r\n}\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar-thumb {\r\n background-color: rgba(0,0,0,.4);\r\n border-radius: 16px;\r\n border: 4px solid transparent;\r\n}\r\n.fp-warning,\r\n.fp-watermark{\r\n z-index: 9999999;\r\n position: absolute;\r\n bottom: 0;\r\n}\r\n.fp-warning,\r\n.fp-watermark a{\r\n text-decoration: none;\r\n color: #000;\r\n background: rgba(255,255,255,0.6);\r\n padding: 5px 8px;\r\n font-size: 14px;\r\n font-family: arial;\r\n color: black;\r\n display: inline-block;\r\n border-radius: 3px;\r\n margin: 12px;\r\n}\r\n.fp-noscroll .fp-overflow{\r\n overflow: hidden;\r\n}"]} \ No newline at end of file +{"version":3,"sources":["fullpage.css"],"names":[],"mappings":"AAAA;;;;;;;;;AAWA,iBADA,gBAEI,OAAQ,EACR,QAAS,EACT,SAAS,OAGT,4BAA6B,cAEjC,YACI,SAAU,SACV,mBAAoB,WACpB,gBAAiB,WACjB,WAAY,WACZ,OAAQ,KACR,QAAS,MAEb,UACI,MAAO,KAEX,UAAW,oBACP,OAAQ,KACR,QAAS,MAEb,WACI,QAAQ,EACR,OAAQ,KACR,SAAU,OACV,SAAU,SACV,mBAAoB,IAAI,IAAK,SAC7B,WAAY,IAAI,IAAK,SAEzB,UACI,QAAS,KACT,eAAgB,OAChB,gBAAiB,OACjB,MAAO,KAEX,oBACI,MAAO,KACP,SAAU,SAEd,iBACI,oBAAqB,KACrB,iBAAkB,KAClB,mBAAoB,KACpB,gBAAiB,KACjB,SAAU,SACV,QAAS,EACT,IAAK,IACL,OAAQ,QACR,WAAY,MACZ,kBAAmB,mBACnB,cAAe,mBACf,UAAW,mBAEf,SACI,KAAM,KAEV,SACI,MAAO,KAEX,UACI,MAAO,EACP,OAAQ,EACR,aAAc,MAElB,kBACI,aAAc,OAAO,KAAK,OAAO,EACjC,aAAc,YAAY,KAAK,YAAY,YAE/C,kBACI,aAAc,OAAO,EAAE,OAAO,KAC9B,aAAc,YAAY,YAAY,YAAY,KAEtD,iBACI,mBAAoB,eACpB,WAAY,eAEhB,QACI,SAAU,MACV,QAAS,IACT,IAAK,IACL,QAAS,EACT,UAAW,iBACX,cAAe,iBACf,kBAAmB,sBAEvB,iBACI,MAAO,KAEX,gBACI,KAAM,KAEV,cACI,SAAU,SACV,QAAS,EACT,QAAS,EACT,kBAAmB,mBACnB,cAAe,mBACf,UAAW,mBACX,KAAM,YACN,MAAO,EACP,OAAQ,EAAE,eAEd,wBACI,OAAQ,KAEZ,qBACI,IAAK,KAET,WACA,iBACE,OAAQ,EACR,QAAS,EAEX,cACA,oBACI,QAAS,MACT,MAAO,KACP,OAAQ,KACR,OAAQ,IACR,SAAS,SAEb,oBACI,QAAS,aAEb,gBACA,sBACI,QAAS,MACT,SAAU,SACV,QAAS,EACT,MAAO,KACP,OAAQ,KACR,OAAQ,QACR,gBAAiB,KAErB,4BAEA,kCADA,kCAEA,wCACI,OAAQ,KACR,MAAO,KACP,OAAQ,KAAK,EAAE,EAAE,KACjB,cAAe,KAEnB,qBACA,2BACI,cAAe,IACf,SAAU,SACV,QAAS,EACT,OAAQ,IACR,MAAO,IACP,OAAQ,EACR,WAAY,KACZ,KAAM,IACN,IAAK,IACL,OAAQ,KAAK,EAAE,EAAE,KACjB,mBAAoB,IAAI,IAAK,YAC7B,gBAAiB,IAAI,IAAK,YAC1B,cAAe,IAAI,IAAK,YACxB,WAAY,IAAI,IAAK,YAEzB,2BACA,iCACI,MAAO,KACP,OAAQ,KACR,OAAQ,KAAK,EAAI,EAAI,KAEzB,0BACI,SAAU,SACV,IAAK,KACL,MAAO,KACP,UAAW,KACX,YAAa,KAAK,CAAE,SAAS,CAAE,WAC/B,YAAa,OACb,UAAW,MACX,SAAU,OACV,QAAS,MACT,QAAS,EACT,MAAO,EACP,OAAQ,QAEZ,gCACA,4CACI,mBAAoB,QAAQ,IAAK,QACjC,WAAY,QAAQ,IAAK,QACzB,MAAO,KACP,QAAS,EAEb,mCACI,MAAO,KAEX,kCACI,KAAM,KAGV,0BADA,2BAEI,OAAQ,eAGZ,0CACI,OAAQ,eAKZ,2BACA,yBAFA,wDAIG,OAAQ,MACR,OAAQ,0BAIX,uEACA,qEAFA,oGAII,WAAY,MACZ,WAAY,0BAIhB,aACI,gBAAiB,WACjB,WAAY,MAIhB,4CACI,WAAY,KAIhB,4CADA,uDAEA,6BACI,WAAY,KAEhB,aACI,QAAQ,EAGZ,sBACI,QAAS,MAKb,uDADA,oDADA,qDAGI,OAAQ,eACR,WAAY,eAIhB,YACI,SAAU,SACV,MAAO,IACP,OAAQ,IACR,QAAS,EACT,SAAU,OACV,KAAM,cACN,YAAa,OACb,OAAQ,EAKZ,+CACI,iBAAkB,YAClB,MAAO,IAEX,qDACI,iBAAkB,YAEtB,qDACI,iBAAkB,eAClB,cAAe,KACf,OAAQ,IAAI,MAAM,YAEtB,YACA,cACI,QAAS,QACT,SAAU,SACV,OAAQ,EAEZ,YACA,gBACI,gBAAiB,KACjB,MAAO,KACP,WAAY,qBACZ,QAAS,IAAI,IACb,UAAW,KACX,YAAa,MACb,MAAO,KACP,QAAS,aACT,cAAe,IACf,OAAQ,KAEZ,0BACI,SAAU","file":"fullpage.min.css","sourcesContent":["/*!\r\n * fullPage 4.0.23\r\n * https://github.com/alvarotrigo/fullPage.js\r\n *\r\n * @license GPLv3 for open source use only\r\n * or Fullpage Commercial License for commercial use\r\n * http://alvarotrigo.com/fullPage/pricing/\r\n *\r\n * Copyright (C) 2021 http://alvarotrigo.com/fullPage - A project by Alvaro Trigo\r\n */\r\nhtml.fp-enabled,\r\n.fp-enabled body {\r\n margin: 0;\r\n padding: 0;\r\n overflow:hidden;\r\n\r\n /*Avoid flicker on slides transitions for mobile phones #336 */\r\n -webkit-tap-highlight-color: rgba(0,0,0,0);\r\n}\r\n.fp-section {\r\n position: relative;\r\n -webkit-box-sizing: border-box; /* Safari<=5 Android<=3 */\r\n -moz-box-sizing: border-box; /* <=28 */\r\n box-sizing: border-box;\r\n height: 100%;\r\n display: block;\r\n}\r\n.fp-slide {\r\n float: left;\r\n}\r\n.fp-slide, .fp-slidesContainer {\r\n height: 100%;\r\n display: block;\r\n}\r\n.fp-slides {\r\n z-index:1;\r\n height: 100%;\r\n overflow: hidden;\r\n position: relative;\r\n -webkit-transition: all 0.3s ease-out; /* Safari<=6 Android<=4.3 */\r\n transition: all 0.3s ease-out;\r\n}\r\n.fp-table{\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n width: 100%;\r\n}\r\n.fp-slidesContainer {\r\n float: left;\r\n position: relative;\r\n}\r\n.fp-controlArrow {\r\n -webkit-user-select: none; /* webkit (safari, chrome) browsers */\r\n -moz-user-select: none; /* mozilla browsers */\r\n -khtml-user-select: none; /* webkit (konqueror) browsers */\r\n -ms-user-select: none; /* IE10+ */\r\n position: absolute;\r\n z-index: 4;\r\n top: 50%;\r\n cursor: pointer;\r\n margin-top: -38px;\r\n -webkit-transform: translate3d(0,0,0);\r\n -ms-transform: translate3d(0,0,0);\r\n transform: translate3d(0,0,0);\r\n}\r\n.fp-prev{\r\n left: 15px;\r\n}\r\n.fp-next{\r\n right: 15px;\r\n}\r\n.fp-arrow{\r\n width: 0;\r\n height: 0;\r\n border-style: solid;\r\n}\r\n.fp-arrow.fp-prev {\r\n border-width: 38.5px 34px 38.5px 0;\r\n border-color: transparent #fff transparent transparent;\r\n}\r\n.fp-arrow.fp-next {\r\n border-width: 38.5px 0 38.5px 34px;\r\n border-color: transparent transparent transparent #fff;\r\n}\r\n.fp-notransition {\r\n -webkit-transition: none !important;\r\n transition: none !important;\r\n}\r\n#fp-nav {\r\n position: fixed;\r\n z-index: 100;\r\n top: 50%;\r\n opacity: 1;\r\n transform: translateY(-50%);\r\n -ms-transform: translateY(-50%);\r\n -webkit-transform: translate3d(0,-50%,0);\r\n}\r\n#fp-nav.fp-right {\r\n right: 17px;\r\n}\r\n#fp-nav.fp-left {\r\n left: 17px;\r\n}\r\n.fp-slidesNav{\r\n position: absolute;\r\n z-index: 4;\r\n opacity: 1;\r\n -webkit-transform: translate3d(0,0,0);\r\n -ms-transform: translate3d(0,0,0);\r\n transform: translate3d(0,0,0);\r\n left: 0 !important;\r\n right: 0;\r\n margin: 0 auto !important;\r\n}\r\n.fp-slidesNav.fp-bottom {\r\n bottom: 17px;\r\n}\r\n.fp-slidesNav.fp-top {\r\n top: 17px;\r\n}\r\n#fp-nav ul,\r\n.fp-slidesNav ul {\r\n margin: 0;\r\n padding: 0;\r\n}\r\n#fp-nav ul li,\r\n.fp-slidesNav ul li {\r\n display: block;\r\n width: 14px;\r\n height: 13px;\r\n margin: 7px;\r\n position:relative;\r\n}\r\n.fp-slidesNav ul li {\r\n display: inline-block;\r\n}\r\n#fp-nav ul li a,\r\n.fp-slidesNav ul li a {\r\n display: block;\r\n position: relative;\r\n z-index: 1;\r\n width: 100%;\r\n height: 100%;\r\n cursor: pointer;\r\n text-decoration: none;\r\n}\r\n#fp-nav ul li a.active span,\r\n.fp-slidesNav ul li a.active span,\r\n#fp-nav ul li:hover a.active span,\r\n.fp-slidesNav ul li:hover a.active span{\r\n height: 12px;\r\n width: 12px;\r\n margin: -6px 0 0 -6px;\r\n border-radius: 100%;\r\n }\r\n#fp-nav ul li a span,\r\n.fp-slidesNav ul li a span {\r\n border-radius: 50%;\r\n position: absolute;\r\n z-index: 1;\r\n height: 4px;\r\n width: 4px;\r\n border: 0;\r\n background: #333;\r\n left: 50%;\r\n top: 50%;\r\n margin: -2px 0 0 -2px;\r\n -webkit-transition: all 0.1s ease-in-out;\r\n -moz-transition: all 0.1s ease-in-out;\r\n -o-transition: all 0.1s ease-in-out;\r\n transition: all 0.1s ease-in-out;\r\n}\r\n#fp-nav ul li:hover a span,\r\n.fp-slidesNav ul li:hover a span{\r\n width: 10px;\r\n height: 10px;\r\n margin: -5px 0px 0px -5px;\r\n}\r\n#fp-nav ul li .fp-tooltip {\r\n position: absolute;\r\n top: -2px;\r\n color: #fff;\r\n font-size: 14px;\r\n font-family: arial, helvetica, sans-serif;\r\n white-space: nowrap;\r\n max-width: 220px;\r\n overflow: hidden;\r\n display: block;\r\n opacity: 0;\r\n width: 0;\r\n cursor: pointer;\r\n}\r\n#fp-nav ul li:hover .fp-tooltip,\r\n#fp-nav.fp-show-active a.active + .fp-tooltip {\r\n -webkit-transition: opacity 0.2s ease-in;\r\n transition: opacity 0.2s ease-in;\r\n width: auto;\r\n opacity: 1;\r\n}\r\n#fp-nav ul li .fp-tooltip.fp-right {\r\n right: 20px;\r\n}\r\n#fp-nav ul li .fp-tooltip.fp-left {\r\n left: 20px;\r\n}\r\n.fp-auto-height.fp-section,\r\n.fp-auto-height .fp-slide{\r\n height: auto !important;\r\n}\r\n\r\n.fp-responsive .fp-is-overflow.fp-section{\r\n height: auto !important;\r\n}\r\n\r\n/* Used with autoScrolling: false */ \r\n.fp-scrollable.fp-responsive .fp-is-overflow.fp-section,\r\n.fp-scrollable .fp-section,\r\n.fp-scrollable .fp-slide{\r\n /* Fallback for browsers that do not support Custom Properties */\r\n height: 100vh;\r\n height: calc(var(--vh, 1vh) * 100);\r\n}\r\n\r\n.fp-scrollable.fp-responsive .fp-is-overflow.fp-section:not(.fp-auto-height):not([data-percentage]),\r\n.fp-scrollable .fp-section:not(.fp-auto-height):not([data-percentage]),\r\n.fp-scrollable .fp-slide:not(.fp-auto-height):not([data-percentage]){\r\n /* Fallback for browsers that do not support Custom Properties */\r\n min-height: 100vh;\r\n min-height: calc(var(--vh, 1vh) * 100);\r\n}\r\n\r\n/* Disabling vertical centering on scrollable elements */\r\n.fp-overflow{\r\n justify-content: flex-start;\r\n max-height: 100vh;\r\n}\r\n\r\n/* No scrollable when using auto-height */\r\n.fp-scrollable .fp-auto-height .fp-overflow{\r\n max-height: none;\r\n}\r\n\r\n.fp-is-overflow .fp-overflow.fp-auto-height-responsive,\r\n.fp-is-overflow .fp-overflow.fp-auto-height,\r\n.fp-is-overflow > .fp-overflow{\r\n overflow-y: auto;\r\n}\r\n.fp-overflow{\r\n outline:none;\r\n}\r\n\r\n.fp-overflow.fp-table{\r\n display: block;\r\n}\r\n\r\n.fp-responsive .fp-auto-height-responsive.fp-section,\r\n.fp-responsive .fp-auto-height-responsive .fp-slide,\r\n.fp-responsive .fp-auto-height-responsive .fp-overflow{\r\n height: auto !important;\r\n min-height: auto !important;\r\n}\r\n\r\n/*Only display content to screen readers*/\r\n.fp-sr-only{\r\n position: absolute;\r\n width: 1px;\r\n height: 1px;\r\n padding: 0;\r\n overflow: hidden;\r\n clip: rect(0, 0, 0, 0);\r\n white-space: nowrap;\r\n border: 0;\r\n}\r\n\r\n/* Customize website's scrollbar like Mac OS\r\nNot supports in Firefox and IE */\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar {\r\n background-color: transparent;\r\n width: 9px;\r\n}\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar-track {\r\n background-color: transparent;\r\n}\r\n.fp-scroll-mac .fp-overflow::-webkit-scrollbar-thumb {\r\n background-color: rgba(0,0,0,.4);\r\n border-radius: 16px;\r\n border: 4px solid transparent;\r\n}\r\n.fp-warning,\r\n.fp-watermark{\r\n z-index: 9999999;\r\n position: absolute;\r\n bottom: 0;\r\n}\r\n.fp-warning,\r\n.fp-watermark a{\r\n text-decoration: none;\r\n color: #000;\r\n background: rgba(255,255,255,0.6);\r\n padding: 5px 8px;\r\n font-size: 14px;\r\n font-family: arial;\r\n color: black;\r\n display: inline-block;\r\n border-radius: 3px;\r\n margin: 12px;\r\n}\r\n.fp-noscroll .fp-overflow{\r\n overflow: hidden;\r\n}"]} \ No newline at end of file diff --git a/dist/fullpage.min.js b/dist/fullpage.min.js index 82deb1710..661a02c15 100644 --- a/dist/fullpage.min.js +++ b/dist/fullpage.min.js @@ -1,5 +1,5 @@ /*! -* fullPage 4.0.22 +* fullPage 4.0.23 * https://github.com/alvarotrigo/fullPage.js * * @license GPLv3 for open source use only @@ -8,4 +8,4 @@ * * Copyright (C) 2018 http://alvarotrigo.com/fullPage - A project by Alvaro Trigo */ -!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).fullpage=t()}(this,(function(){"use strict";var n,t,e,i;Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(n){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),e=t.length>>>0;if("function"!=typeof n)throw new TypeError("predicate must be a function");for(var i=arguments[1],o=0;o0?1:-1)*Math.floor(Math.abs(t)):t}(n);return Math.min(Math.max(t,0),e)},function(n){var e=this,o=Object(n);if(null==n)throw new TypeError("Array.from requires an array-like object - not null or undefined");var r,a=arguments.length>1?arguments[1]:void 0;if(void 0!==a){if(!t(a))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(r=arguments[2])}for(var u,l=i(o.length),c=t(e)?Object(new e(l)):new Array(l),f=0;f0||navigator.maxTouchPoints,c=!!window.MSInputMethodContext&&!!document.documentMode,f={test:{},shared:{}},s=["parallax","scrollOverflowReset","dragAndMove","offsetSections","fadingEffect","responsiveSlides","continuousHorizontal","interlockedSlides","scrollHorizontally","resetSliders","cards","dropEffect","waterEffect"];function v(n,t){o.console&&o.console[n]&&o.console[n]("fullPage: "+t)}function d(n){return"none"!==o.getComputedStyle(n).display}function h(n){return Array.from(n).filter((function(n){return d(n)}))}function p(n,t){return(t=arguments.length>1?t:document)?t.querySelectorAll(n):null}function g(n){n=n||{};for(var t=1,e=arguments.length;t>=0,t=String(void 0!==t?t:" "),this.length>n?String(this):((n-=this.length)>t.length&&(t+=Array.apply(null,Array(n)).map((function(){return t})).join("")),t.slice(0,n)+String(this))}),window.fp_utils={$:p,deepExtend:g,hasClass:m,getWindowHeight:w,css:y,prev:S,next:T,last:M,index:A,getList:x,hide:k,show:j,isArrayOrList:O,addClass:L,removeClass:D,appendTo:E,wrap:R,wrapAll:P,unwrap:z,closest:C,after:I,before:N,insertBefore:B,getScrollTop:H,siblings:W,preventDefault:V,isFunction:Y,trigger:$,matches:Q,toggle:X,createElementFromHTML:J,remove:Z,untilAll:nn,nextAll:tn,prevAll:en,showError:v};var fn=Object.freeze({__proto__:null,showError:v,isVisible:d,o:h,$:p,deepExtend:g,hasClass:m,getWindowHeight:w,u:b,css:y,prev:S,next:T,last:M,index:A,getList:x,hide:k,show:j,isArrayOrList:O,addClass:L,removeClass:D,appendTo:E,wrap:R,wrapAll:P,l:F,unwrap:z,closest:C,after:I,before:N,insertBefore:B,getScrollTop:H,siblings:W,preventDefault:V,v:U,h:_,p:K,g:q,S:G,isFunction:Y,trigger:$,matches:Q,toggle:X,createElementFromHTML:J,remove:Z,untilAll:nn,nextAll:tn,prevAll:en,toArray:on,T:rn,M:an,A:un,j:ln,O:cn});function sn(n){return sn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},sn(n)}var vn={L:{},D:function(n,t){var e=this;return"object"!==sn(this.L[n])&&(this.L[n]=[]),this.L[n].push(t),function(){return e.removeListener(n,t)}},removeListener:function(n,t){if("object"===sn(this.L[n])){var e=this.L[n].indexOf(t);e>-1&&this.L[n].splice(e,1)}},R:function(n){for(var t=this,e=arguments.length,i=new Array(e>1?e-1:0),o=1;o
      ','
      '],controlArrowColor:"#fff",verticalCentered:!0,sectionsColor:[],paddingTop:0,paddingBottom:0,fixedElements:null,responsive:0,responsiveWidth:0,responsiveHeight:0,responsiveSlides:!1,parallax:!1,parallaxOptions:{type:"reveal",percentage:62,property:"translate"},cards:!1,cardsOptions:{perspective:100,fadeContent:!0,fadeBackground:!0},sectionSelector:".section",slideSelector:".slide",afterLoad:null,beforeLeave:null,onLeave:null,afterRender:null,afterResize:null,afterReBuild:null,afterSlideLoad:null,onSlideLeave:null,afterResponsive:null,onScrollOverflow:null,lazyLoading:!0,observer:!0,un:!0},mt=null,wt=!1,bt=g({},gt),yt=null;function St(n){return mt}function Tt(){return yt||gt}function Mt(){return bt}function At(n,t,e){yt[n]=t,"internal"!==e&&(bt[n]=t)}function xt(){if(!Tt().anchors.length){var n=p(Tt().sectionSelector.split(",").join("[data-anchor],")+"[data-anchor]",mt);n.length&&n.length===p(Tt().sectionSelector,mt).length&&(wt=!0,n.forEach((function(n){Tt().anchors.push(U(n,"data-anchor").toString())})))}if(!Tt().navigationTooltips.length){var t=p(Tt().sectionSelector.split(",").join("[data-tooltip],")+"[data-tooltip]",mt);t.length&&t.forEach((function(n){Tt().navigationTooltips.push(U(n,"data-tooltip").toString())}))}}var kt=function(n){this.anchor=n.anchor,this.item=n.item,this.index=n.index(),this.isLast=this.index===n.item.parentElement.querySelectorAll(n.selector).length-1,this.isFirst=!this.index,this.isActive=n.isActive},jt=function(n,t){this.parent=this.parent||null,this.selector=t,this.anchor=U(n,"data-anchor")||Tt().anchors[A(n,Tt().sectionSelector)],this.item=n,this.isVisible=d(n),this.isActive=m(n,Kn),this.ln=m(n,at)||null!=p(ut,n)[0],this.cn=t===Tt().sectionSelector,this.sn=C(n,ot)||C(n,Hn),this.index=function(){return this.siblings().indexOf(this)}};function Ot(n){return n.map((function(n){return n.item}))}function Lt(n,t){return n.find((function(n){return n.item===t}))}jt.prototype.siblings=function(){return this.cn?this.isVisible?dn.C:dn.vn:this.parent?this.parent.slides:0},jt.prototype.prev=function(){var n=this.siblings(),t=(this.cn?n.indexOf(this):this.parent.slides.indexOf(this))-1;return t>=0?n[t]:null},jt.prototype.next=function(){var n=this.siblings(),t=(this.cn?n.indexOf(this):this.parent.slides.indexOf(this))+1;return ti?"up":"down"}function Bt(n){return L(n,Vn)}function Ht(n){return{"-webkit-transform":n,"-moz-transform":n,"-ms-transform":n,transform:n}}function Wt(n,t){t?It(St()):Bt(St()),clearTimeout(Dt),y(St(),Ht(n)),f.test.pn=n,Dt=setTimeout((function(){D(St(),Vn)}),10)}function Vt(n){var t=Math.round(n);if(Tt().css3&&Tt().autoScrolling&&!Tt().scrollBar)Wt("translate3d(0px, -"+t+"px, 0px)",!1);else if(Tt().autoScrolling&&!Tt().scrollBar)y(St(),{top:-t+"px"}),f.test.top=-t+"px";else{var e=zt(t);Ct(e.element,e.options)}}function Ut(n,t){At("scrollingSpeed",n,t)}f.setScrollingSpeed=Ut;var _t,Kt=null,qt=null,Gt=null;function Yt(n,t,e,i){var r,a=function(n){return n.self!=o&&m(n,tt)?n.scrollLeft:!Tt().autoScrolling||Tt().scrollBar?H():n.offsetTop}(n),u=t-a,l=!1,c=dn.q;hn({q:!0}),_t&&window.cancelAnimationFrame(_t),_t=function(f){r||(r=f);var s=Math.floor(f-r);if(dn.q){var v=t;e&&(v=o.fp_easings[Tt().easing](s,a,u,e)),s<=e&&Ct(n,v),s0,r=i>2&&i'+ae(a.index(),"Section")+"";var l=Tt().navigationTooltips[a.index()];void 0!==l&&""!==l&&(i+='
      '+l+"
      "),i+=""}p("ul",e)[0].innerHTML=i;var c=p("li",p(Xn)[0])[pn().I.index()];L(p("a",c),Kn)}function me(n){n.preventDefault&&V(n),hn({N:"verticalNav"});var t=A(C(this,"#fp-nav li"));vn.R(On,{destination:pn().C[t]})}function we(n,t){var e;e=n,Tt().menu&&Tt().menu.length&&p(Tt().menu).forEach((function(n){null!=n&&(D(p(qn,n),Kn),L(p('[data-menuanchor="'+e+'"]',n),Kn))})),function(n,t){var e=p(Xn)[0];Tt().navigation&&null!=e&&"none"!==e.style.display&&(D(p(qn,e),Kn),L(n?p('a[href="#'+n+'"]',e):p("a",p("li",e)[t]),Kn))}(n,t)}le.m={up:!0,down:!0,left:!0,right:!0},le.k=g({},le.m),vn.D(mn,(function(n){var t=n.target;(Q(t,vt)||C(t,vt))&&se.call(t,n)})),f.setRecordHistory=ve,f.setAutoScrolling=de,f.test.setAutoScrolling=de,(new Date).getTime();var be,ye,Se,Te,Me,Ae,xe=(ye=!0,Se=(new Date).getTime(),Te=!o.fullpage_api,function(n,t){var e=(new Date).getTime(),i="wheel"===n?Tt().scrollingSpeed:100;return ye=Te||e-Se>=i,Te=!o.fullpage_api,ye&&(be=t(),Se=e),void 0===be||be});function ke(n,t){if(Y(Tt().beforeLeave))return xe(pn().N,(function(){return Xt(n,t)}))}function je(n,t,e){var i=n.item;if(null!=i){var o,r,a=function(n){var t=n.offsetHeight,e=n.offsetTop,i=e,o=e>dn.tn,r=i-w()+t,a=Tt().bigSectionsDestination;return t>w()?(o||a)&&"bottom"!==a||(i=r):(o||dn.V&&null==T(n))&&(i=r),hn({tn:i}),i}(i),u={element:i,callback:t,isMovementUp:e,dtop:a,yMovement:Nt(pn().I,i),anchorLink:n.anchor,sectionIndex:n.index(),activeSlide:n.activeSlide?n.activeSlide.item:null,leavingSection:pn().I.index()+1,localIsResizing:dn.V,items:{origin:pn().I,destination:n},direction:null};if(!(pn().I.item==i&&!dn.V||Tt().scrollBar&&H()===u.dtop&&!m(i,"fp-auto-height"))){if(null!=u.activeSlide&&(o=U(u.activeSlide,"data-anchor"),r=A(u.activeSlide,null)),!u.localIsResizing){var l=u.yMovement;if(void 0!==e&&(l=e?"up":"down"),u.direction=l,Y(Tt().beforeLeave)&&!1===ke("beforeLeave",u))return;if(Y(Tt().onLeave)&&!Xt("onLeave",u))return}Tt().autoScrolling&&Tt().continuousVertical&&void 0!==u.isMovementUp&&(!u.isMovementUp&&"up"==u.yMovement||u.isMovementUp&&"down"==u.yMovement)&&(u=function(n){hn({on:!0});var t=pn().I.item;return n.isMovementUp?N(t,tn(t,$n)):I(t,en(t,$n).reverse()),Vt(pn().I.item.offsetTop),function(){for(var n=p(nt),t=0;t-1&&!Ve.jn)return V(n),!1},An:function(){Ve.kn=dn.G},onLeave:function(){clearTimeout(ze),Ve.jn=!1},afterLoad:function(){Ve.jn=!1,clearTimeout(ze),ze=setTimeout((function(){Ve.kn=dn.G}),200)},Rn:function(){r.activeElement===this.xn&&(this.xn.blur(),Ve.jn=!1)},Mn:function(){if(Tt().scrollOverflow&&Ve.kn){Ve.Rn();var n=Ve.Pn(pn().I.item);!n||a||l||(this.xn=n,requestAnimationFrame((function(){n.focus(),Ve.jn=!0}))),Ve.kn=!1}},Tn:function(){Tt().scrollOverflowMacStyle&&!u&&L(Kt,"fp-scroll-mac"),pn().hn.forEach((function(n){if(!(n.slides&&n.slides.length||m(n.item,"fp-auto-height-responsive")&&Pe())){var t,e=Pt(n.item),i=Ve.bn(n.item),o=(t=n).cn?t:t.parent;if(c){var r=i?"addClass":"removeClass";fn[r](o.item,lt),fn[r](n.item,lt)}else L(o.item,lt),L(n.item,lt);n.ln||(Ve.Fn(e),Ve.zn(e)),n.ln=!0}}))},zn:function(n){Ve.Pn(n).addEventListener("scroll",Ve.Cn),n.addEventListener("wheel",Ve.Dn,{passive:!1}),n.addEventListener("keydown",Ve.En,{passive:!1})},Fn:function(n){var t=document.createElement("div");t.className=at,F(n,t),t.setAttribute("tabindex","-1")},In:function(n){var t=p(ut,n)[0];t&&(z(t),n.removeAttribute("tabindex"))},Pn:function(n){var t=Pt(n);return p(ut,t)[0]||t},ln:function(n){return m(n,at)||null!=p(ut,n)[0]},yn:function(n){return n.cn&&n.activeSlide?n.activeSlide.ln:n.ln},bn:function(n){return Ve.Pn(n).scrollHeight>o.innerHeight},isScrolled:function(n,t){if(!dn.G)return!1;if(Tt().scrollBar)return!0;var e=Ve.Pn(t);if(!Tt().scrollOverflow||!m(e,at)||m(t,"fp-noscroll")||m(Pt(t),"fp-noscroll"))return!0;var i=c?1:0,o=e.scrollTop,r="up"===n&&o<=0,a="down"===n&&e.scrollHeight<=Math.ceil(e.offsetHeight+o)+i,u=r||a;return u||(this.On=(new Date).getTime()),u},Nn:function(){this.Ln=(new Date).getTime();var n=this.Ln-Ve.On,t=(a||l)&&dn.J,e=dn.Z&&n>600;return t&&n>400||e},Cn:(He=0,function(n){var t=n.target.scrollTop,e="none"!==dn.Y?dn.Y:Heo?"left":"right"),l.direction=l.direction?l.direction:l.Bn,l.localIsResizing||hn({G:!1}),Tt().onSlideLeave&&!l.localIsResizing&&"none"!==l.Bn&&Y(Tt().onSlideLeave)&&!1===Xt("onSlideLeave",l)?hn({W:!1}):(L(t,Kn),D(W(t),Kn),Qe(),l.localIsResizing||(ne(l.prevSlide),te(t)),function(n){!Tt().loopHorizontal&&Tt().controlArrows&&(X(p(ht,n.section),0!==n.slideIndex),X(p(pt,n.section),null!=T(n.destiny)))}(l),a.isActive&&!l.localIsResizing&&oe(l.slideIndex,l.slideAnchor,l.anchorLink),vn.R(Rn,l),function(n,t,e){var i,o,r=t.destinyPos;if(i=t.slidesNav,o=t.slideIndex,Tt().slidesNavigation&&null!=i&&(D(p(qn,i),Kn),L(p("a",p("li",i)[o]),Kn)),hn({scrollX:Math.round(r.left)}),Tt().css3){var a="translate3d(-"+Math.round(r.left)+"px, 0px, 0px)";f.test.Hn[t.sectionIndex]=a,y(It(p(ot,n)),Ht(a)),clearTimeout(We),We=setTimeout((function(){qe(t)}),Tt().scrollingSpeed)}else f.test.left[t.sectionIndex]=Math.round(r.left),Yt(n,Math.round(r.left),Tt().scrollingSpeed,(function(){qe(t)}))}(n,l))}function Ke(){clearTimeout(We)}function qe(n){n.localIsResizing||(Y(Tt().afterSlideLoad)&&Xt("afterSlideLoad",n),hn({G:!0}),Jt(n.destiny),vn.R(zn,n)),hn({W:!1})}function Ge(n,t){Ut(0,"internal"),void 0!==t&&hn({V:!0}),_e(C(n,et),n),void 0!==t&&hn({V:!1}),Ut(Mt().scrollingSpeed,"internal")}f.landscapeScroll=_e,vn.D(Sn,(function(){vn.D(En,Ue)}));var Ye=null,$e=null;function Qe(){dn.I=null,dn.C.map((function(n){var t=m(n.item,Kn);n.isActive=t,n.ln=Ve.ln(n.item),t&&(dn.I=n),n.slides.length&&(n.activeSlide=null,n.slides.map((function(t){var e=m(t.item,Kn);t.ln=Ve.ln(n.item),t.isActive=e,e&&(n.activeSlide=t)})))})),function(){var n=dn.I,t=!!dn.I&&dn.I.slides.length,e=dn.I?dn.I.activeSlide:null;if(!n&&dn.C.length&&!pn().B&&Ye){var i=Ze(Ye,dn.C);i&&(dn.I=i,dn.I.isActive=!0,L(dn.I.item,Kn)),dn.I&&Vt(dn.I.item.offsetTop)}if(t&&!e&&$e){var o=Ze($e,dn.I.slides);o&&(dn.I.activeSlide=o,dn.I.activeSlide.isActive=!0,L(dn.I.activeSlide.item,Kn)),dn.I.activeSlide&&Ge(dn.I.activeSlide.item,"internal")}}()}function Xe(){var n=p(Tt().sectionSelector,St()),t=h(n),e=Array.from(n).map((function(n){return new ni(n)})),i=e.filter((function(n){return n.isVisible})),o=i.reduce((function(n,t){return n.concat(t.slides)}),[]);Ye=Je(dn.I),$e=Je(dn.I?dn.I.activeSlide:null),dn.P=t.length,dn.F=i.reduce((function(n,t){return n+t.slides.length}),0),dn.C=i,dn.vn=e,dn.slides=o,dn.hn=dn.C.concat(dn.slides)}function Je(n){if(!n)return null;var t=n?n.item:null,e=n.cn?dn.vn:dn.I.Wn;if(t){var i=Lt(e,t);return i?i.index():null}return null}function Ze(n,t){var e,i=n-1,o=n;do{if(e=t[i]||t[o])break;i-=1,o+=1}while(i>=0||o1&&(Tt().controlArrows&&function(n){var t=n.item,e=[J(Tt().controlArrowsHTML[0]),J(Tt().controlArrowsHTML[1])];I(p(et,t)[0],e),L(e,st),L(e[0],dt),L(e[1],"fp-next"),"#fff"!==Tt().controlArrowColor&&(y(p(pt,t),{"border-color":"transparent transparent transparent "+Tt().controlArrowColor}),y(p(ht,t),{"border-color":"transparent "+Tt().controlArrowColor+" transparent transparent"})),Tt().loopHorizontal||k(p(ht,t))}(n),Tt().slidesNavigation&&function(n){var t=n.item,e=n.slides.length;E(J('
        '),t);var i=p(ct,t)[0];L(i,"fp-"+Tt().slidesNavPosition);for(var o=0;o'+ae(o,"Slide",p(Zn,t)[o])+""),p("ul",i)[0]);y(i,{"margin-left":"-"+i.innerWidth/2+"px"});var r=n.activeSlide?n.activeSlide.index():0;L(p("a",p("li",i)[r]),Kn)}(n)),i.forEach((function(n){y(n.item,{width:a+"%"}),Tt().verticalCentered&&Fe(n)}));var c=n.activeSlide||null;null!=c&&dn.I&&(0!==dn.I.index()||0===dn.I.index()&&0!==c.index())?Ge(c.item,"internal"):L(e[0],Kn)}ei.prototype=jt.prototype,ei.prototype.constructor=ni;var ri={attributes:!1,subtree:!0,childList:!0,characterData:!0};function ai(){return h(p(Tt().slideSelector,St())).length!==pn().F}function ui(n){var t=ai();(ai()||h(p(Tt().sectionSelector,St())).length!==pn().P)&&!dn.on&&(Tt().observer&&ti&&ti.disconnect(),Xe(),Qe(),Tt().anchors=[],Z(p(Xn)),ii(),xt(),Tt().navigation&&ge(),t&&(Z(p(ct)),Z(p(vt))),pn().C.forEach((function(n){n.slides.length?t&&oi(n):Ie(n)}))),Tt().observer&&ti&&p(Hn)[0]&&ti.observe(p(Hn)[0],ri)}vn.D(Sn,(function(){var n,t,e;Tt().observer&&"MutationObserver"in window&&p(Hn)[0]&&(n=p(Hn)[0],t=ri,(e=new MutationObserver(ui)).observe(n,t),ti=e),vn.D(Mn,ui)})),f.render=ui;var li=function(){var n=!1;try{var t=Object.defineProperty({},"passive",{get:function(){n=!0}});K("testPassive",null,t),G("testPassive",null,t)}catch(n){}return function(){return n}}();function ci(){return!!li()&&{passive:!1}}var fi,si,vi,di,hi=(vi=(new Date).getTime(),di=[],{Vn:function(n){var t=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,e=Math.max(-1,Math.min(1,t)),i=void 0!==n.wheelDeltaX||void 0!==n.deltaX;fi=Math.abs(n.wheelDeltaX)149&&di.shift(),di.push(Math.abs(t));var a=r-vi;vi=r,a>200&&(di=[])},Un:function(){var n=an(di,10)>=an(di,70);return!!di.length&&n&&fi},_n:function(){return si}});function pi(){var n=Tt().css3?H()+w():rn(pn().C).item.offsetTop+rn(pn().C).item.offsetHeight,t=zt(n);f.test.top=-n+"px",hn({G:!1}),Yt(t.element,t.options,Tt().scrollingSpeed,(function(){setTimeout((function(){hn({B:!0}),hn({G:!0})}),30)}))}function gi(){St().getBoundingClientRect().bottom>=0&&mi()}function mi(){var n=zt(rn(pn().C).item.offsetTop);hn({G:!1}),Yt(n.element,n.options,Tt().scrollingSpeed,(function(){hn({G:!0}),hn({B:!1}),hn({Kn:!1})}))}var wi,bi,yi,Si=(wi=!1,bi={},yi={},function(n,t,e){switch(n){case"set":bi[t]=(new Date).getTime(),yi[t]=e;break;case"isNewKeyframe":var i=(new Date).getTime();wi=i-bi[t]>yi[t]}return wi});function Ti(){var n=pn().I.next();n||!Tt().loopBottom&&!Tt().continuousVertical||(n=pn().C[0]),null!=n?je(n,null,!1):St().scrollHeightAi&&fe().m.down&&Ti()),Ai=n.pageY)}function ki(n){if(fe().m[n]){var t="down"===n?Ti:Mi;Tt().scrollOverflow&&Ve.yn(pn().I)?Ve.isScrolled(n,pn().I.item)&&Ve.Nn()&&t():t()}}var ji,Oi,Li,Di,Ei=0,Ri=0,Pi=0,Fi=0,zi=(o.PointerEvent&&(Di={down:"pointerdown",move:"pointermove"}),Di),Ci={qn:"ontouchmove"in window?"touchmove":zi?zi.move:null,Gn:"ontouchstart"in window?"touchstart":zi?zi.down:null};function Ii(n){var t=C(n.target,$n)||pn().I.item,e=Ve.yn(pn().I);if(Ni(n)){hn({J:!0,Z:!1}),Tt().autoScrolling&&(e&&!dn.G||Tt().scrollBar)&&V(n);var i=Wi(n);Pi=i.y,Fi=i.x;var r=Math.abs(Ei-Pi)>o.innerHeight/100*Tt().touchSensitivity,a=Math.abs(Ri-Fi)>b()/100*Tt().touchSensitivity,u=p(et,t).length&&Math.abs(Ri-Fi)>Math.abs(Ei-Pi),l=Ei>Pi?"down":"up";hn({Y:u?Ri>Fi?"right":"left":l}),u?!dn.W&&a&&(Ri>Fi?fe().m.right&&vn.R(bn,{section:t}):fe().m.left&&vn.R(wn,{section:t})):Tt().autoScrolling&&dn.G&&r&&ki(l)}}function Ni(n){return void 0===n.pointerType||"mouse"!=n.pointerType}function Bi(n){if(Tt().fitToSection&&hn({q:!1}),Ni(n)){var t=Wi(n);Ei=t.y,Ri=t.x}K("touchend",Hi)}function Hi(){G("touchend",Hi),hn({J:!1})}function Wi(n){var t={};return t.y=void 0!==n.pageY&&(n.pageY||n.pageX)?n.pageY:n.touches[0].pageY,t.x=void 0!==n.pageX&&(n.pageY||n.pageX)?n.pageX:n.touches[0].pageX,l&&Ni(n)&&Tt().scrollBar&&void 0!==n.touches&&(t.y=n.touches[0].pageY,t.x=n.touches[0].pageX),t}function Vi(n){Tt().autoScrolling&&Ni(n)&&fe().m.up&&(dn.G||V(n))}function Ui(n,t){var e=null==t?pn().I.item:t,i=Lt(dn.C,e),o=p(et,e)[0];if(!(null==o||dn.W||i.slides.length<2)){var r=i.activeSlide,a="left"===n?r.prev():r.next();if(!a){if(!Tt().loopHorizontal)return;a="left"===n?rn(i.slides):i.slides[0]}hn({W:!f.test.wn}),_e(o,a.item,n)}}function _i(n){Ui("left",n)}function Ki(n){Ui("right",n)}function qi(n){var t=pn().C.filter((function(t){return t.anchor===n}))[0];if(!t){var e=void 0!==n?n-1:0;t=pn().C[e]}return t}function Gi(n){null!=n&&_e(C(n,et),n)}function Yi(n,t){var e=qi(n);if(null!=e){var i=function(n,t){var e=t.slides.filter((function(t){return t.anchor===n}))[0];return null==e&&(n=void 0!==n?n:0,e=t.slides[n]),e?e.item:null}(t,e);e.anchor&&e.anchor===dn._||m(e.item,Kn)?Gi(i):je(e,(function(){Gi(i)}))}}function $i(n,t){var e=qi(n);void 0!==t?Yi(n,t):null!=e&&je(e)}function Qi(){clearTimeout(Oi),q("keydown",Xi),q("keyup",Ji)}function Xi(n){clearTimeout(Oi);var t=n.keyCode,e=[37,39].indexOf(t)>-1,i=Tt().autoScrolling||Tt().fitToSection||e;9===t?function(n){var t=n.shiftKey,e=r.activeElement,i=io(Pt(pn().I.item));function o(n){return V(n),i[0]?i[0].focus():null}if(dn.G){if(!function(n){var t=io(r),e=t.indexOf(r.activeElement),i=t[n.shiftKey?e-1:e+1],o=C(i,Zn),a=C(i,$n);return!o&&!a}(n)){e?null==C(e,".fp-section.active,.fp-section.active .fp-slide.active")&&(e=o(n)):o(n);var a=e==i[0],u=e==i[i.length-1],l=t&&a;if(l||!t&&u){V(n);var c=function(n){var t,e=n?"prevPanel":"nextPanel",i=[],o=Ft((dn.I&&dn.I.activeSlide?dn.I.activeSlide:dn.I)[e]());do{(i=io(o.item)).length&&(t={Yn:o,$n:i[n?i.length-1:0]}),o=Ft(o[e]())}while(o&&0===i.length);return t}(l),f=c?c.Yn:null;if(f){var s=f.cn?f:f.parent;vn.R(xn,{Qn:s.index()+1,slideAnchor:f.cn?0:f.index()}),Li=c.$n,V(n)}}}}else V(n)}(n):!cn()&&Tt().keyboardScrolling&&i&&(ji=n.ctrlKey,Oi=setTimeout((function(){!function(n){var t=n.shiftKey,e=r.activeElement,i=Q(e,"video")||Q(e,"audio"),o=Ve.isScrolled("up",pn().I.item),a=Ve.isScrolled("down",pn().I.item),u=[37,39].indexOf(n.keyCode)>-1;if(function(n){(function(n){return[40,38,32,33,34].indexOf(n.keyCode)>-1&&!dn.B})(n)&&!C(n.target,ut)&&n.preventDefault()}(n),dn.G||u)switch(hn({N:"keydown"}),n.keyCode){case 38:case 33:fe().k.up&&o?dn.B?vn.R(kn,{e:n}):Mi():Ve.Mn();break;case 32:if(t&&fe().k.up&&!i&&o){Mi();break}case 40:case 34:if(fe().k.down&&a){if(dn.B)return;32===n.keyCode&&i||Ti()}else Ve.Mn();break;case 36:fe().k.up&&$i(1);break;case 35:fe().k.down&&$i(pn().C.length);break;case 37:fe().k.left&&_i();break;case 39:fe().k.right&&Ki()}}(n)}),0))}function Ji(n){dn.nn&&(ji=n.ctrlKey)}function Zi(){hn({nn:!1}),ji=!1}function no(n){eo()}function to(n){C(Li,Zn)&&!C(Li,nt)||eo()}function eo(){Li&&(Li.focus(),Li=null)}function io(n){return[].slice.call(p('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], summary:not([disabled]), [contenteditable]',n)).filter((function(n){return"-1"!==U(n,"tabindex")&&null!==n.offsetParent}))}f.moveSlideLeft=_i,f.moveSlideRight=Ki,f.moveTo=$i,vn.D(Sn,(function(){K("blur",Zi),_("keydown",Xi),_("keyup",Ji),vn.D(Tn,Qi),vn.D(zn,no),vn.D(Fn,to)}));var oo=(new Date).getTime(),ro=[];function ao(n){n?(function(){var n,t="";o.addEventListener?n="addEventListener":(n="attachEvent",t="on");var e="onwheel"in r.createElement("div")?"wheel":void 0!==r.onmousewheel?"mousewheel":"DOMMouseScroll",i=ci();"DOMMouseScroll"==e?r[n](t+"MozMousePixelScroll",uo,i):r[n](t+e,uo,i)}(),St().addEventListener("mousedown",lo),St().addEventListener("mouseup",co)):(r.addEventListener?(q("mousewheel",uo,!1),q("wheel",uo,!1),q("MozMousePixelScroll",uo,!1)):r.detachEvent("onmousewheel",uo),St().removeEventListener("mousedown",lo),St().removeEventListener("mouseup",co))}function uo(n){var t=(new Date).getTime(),e=m(p(".fp-completely")[0],"fp-normal-scroll"),i=function(n,t){(new Date).getTime();var e=pn().B&&n.getBoundingClientRect().bottom>=0&&"up"===hi._n(),i=pn().Kn;if(i)return V(t),!1;if(pn().B){if(e){var o;if(!(i||Si("isNewKeyframe","beyondFullpage")&&hi.Un()))return(o=zt(rn(pn().C).item.offsetTop+rn(pn().C).item.offsetHeight)).element.scrollTo(0,o.options),hn({Kn:!1}),V(t),!1;if(hi.Un())return e=!1,hn({Kn:!0}),hn({N:"wheel"}),mi(),V(t),!1}else Si("set","beyondFullpage",1e3);if(!i&&!e)return!0}}(St(),n);if(dn.Z||hn({J:!1,Z:!0,Y:"none"}),!fe().m.down&&!fe().m.up)return V(n),!1;if(i)return!0;if(!1===i)return V(n),!1;if(Tt().autoScrolling&&!ji&&!e){var r=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,a=Math.max(-1,Math.min(1,r)),u=void 0!==n.wheelDeltaX||void 0!==n.deltaX,l=Math.abs(n.wheelDeltaX)0?"up":"none";ro.length>149&&ro.shift(),ro.push(Math.abs(r)),Tt().scrollBar&&V(n);var f=t-oo;return oo=t,f>200&&(ro=[]),hn({X:c}),dn.G&&an(ro,10)>=an(ro,70)&&l&&(hn({N:"wheel"}),ki(a<0?"down":"up")),!1}Tt().fitToSection&&hn({q:!1})}function lo(n){var t;2==n.which&&(t=n.pageY,Ai=t,St().addEventListener("mousemove",xi))}function co(n){2==n.which&&St().removeEventListener("mousemove",xi)}function fo(n){n?(ao(!0),function(){if(Ci.qn&&(a||l)){Tt().autoScrolling&&(Kt.removeEventListener(Ci.qn,Vi,{passive:!1}),Kt.addEventListener(Ci.qn,Vi,{passive:!1}));var n=Tt().touchWrapper;n.removeEventListener(Ci.Gn,Bi),n.removeEventListener(Ci.qn,Ii,{passive:!1}),n.addEventListener(Ci.Gn,Bi),n.addEventListener(Ci.qn,Ii,{passive:!1})}}()):(ao(!1),function(){if(Ci.qn&&(a||l)){Tt().autoScrolling&&(Kt.removeEventListener(Ci.qn,Ii,{passive:!1}),Kt.removeEventListener(Ci.qn,Vi,{passive:!1}));var n=Tt().touchWrapper;n.removeEventListener(Ci.Gn,Bi),n.removeEventListener(Ci.qn,Ii,{passive:!1})}}())}f.setMouseWheelScrolling=ao;var so=!0;function vo(){["mouseenter","touchstart","mouseleave","touchend"].forEach((function(n){q(n,po,!0)}))}function ho(n,t){document["fp_"+n]=t,_(n,po,!0)}function po(n){var t=n.type,e=!1,i="mouseleave"===t?n.toElement||n.relatedTarget:n.target;i!=document&&i?("touchend"===t&&(so=!1,setTimeout((function(){so=!0}),800)),("mouseenter"!==t||so)&&(Tt().normalScrollElements.split(",").forEach((function(n){if(!e){var t=Q(i,n),o=C(i,n);(t||o)&&(f.shared.Xn||fo(!1),f.shared.Xn=!0,e=!0)}})),!e&&f.shared.Xn&&(fo(!0),f.shared.Xn=!1))):fo(!0)}function go(n,t){Ut(0,"internal"),$i(n,t),Ut(Mt().scrollingSpeed,"internal")}vn.D(Sn,(function(){Tt().normalScrollElements&&(["mouseenter","touchstart"].forEach((function(n){ho(n,!1)})),["mouseleave","touchend"].forEach((function(n){ho(n,!0)}))),vn.D(Tn,vo)})),f.silentMoveTo=go;var mo,wo,bo=w(),yo=b(),So=!1;function To(){clearTimeout(mo),clearTimeout(wo),G("resize",Mo)}function Mo(){So||(Tt().autoScrolling&&!Tt().scrollBar||!Tt().fitToSection)&&xo(w()),function(){if(a)for(var n=0;n<4;n++)wo=setTimeout((function(){window.requestAnimationFrame((function(){Tt().autoScrolling&&!Tt().scrollBar&&(hn({V:!0}),go(dn.I.index()+1),hn({V:!1}))}))}),200*n)}(),So=!0,clearTimeout(mo),mo=setTimeout((function(){!function(){if(hn({V:!0}),xo(""),Tt().autoScrolling||dn.B||function(){if(!Tt().autoScrolling||Tt().scrollBar){var n=.01*o.innerHeight;r.documentElement.style.setProperty("--vh","".concat(n,"px"))}}(),vn.R(Mn),Qe(),Ee(),a){var n=r.activeElement;if(!Q(n,"textarea")&&!Q(n,"input")&&!Q(n,"select")){var t=w();Math.abs(t-bo)>20*Math.max(bo,t)/100&&(Ao(!0),bo=t)}}else e=w(),i=b(),dn.en===e&&yo===i||(hn({en:e}),yo=i,Ao(!0));var e,i;hn({V:!1})}(),So=!1}),400)}function Ao(n){if(!m(St(),Un)){hn({V:!0,en:w(),Jn:b()});for(var t=pn().C,e=0;e1&&_e(r,i.activeSlide.item)}Tt().scrollOverflow&&Ve.Tn();var a=pn().I.index();dn.B||a&&go(a+1),hn({V:!1}),Y(Tt().afterResize)&&n&&Tt().afterResize.call(St(),o.innerWidth,o.innerHeight),Y(Tt().afterReBuild)&&!n&&Tt().afterReBuild.call(St()),$(St(),"afterRebuild")}}function xo(n){var t=""===n?"":n+"px";pn().C.forEach((function(n){y(n.item,{height:t})}))}function ko(){var n,t,e=o.location.hash;if(e.length){var i=e.replace("#","").split("/"),r=e.indexOf("#/")>-1;n=r?"/"+i[1]:decodeURIComponent(i[0]);var a=r?i[2]:i[1];a&&a.length&&(t=decodeURIComponent(a))}return{section:n,gn:t}}function jo(){G("hashchange",Oo)}function Oo(){if(!dn.U&&!Tt().lockAnchors){var n=ko(),t=n.section,e=n.gn,i=void 0===dn._,o=void 0===dn._&&void 0===e&&!dn.W;t&&t.length&&(t&&t!==dn._&&!i||o||!dn.W&&dn.K!=e)&&vn.R(xn,{Qn:t,slideAnchor:e})}}function Lo(n){var t=n.target;C(t,Tt().menu+" [data-menuanchor]")&&Do.call(t,n)}function Do(n){hn({N:"menu"}),!p(Tt().menu)[0]||!Tt().lockAnchors&&Tt().anchors.length||(V(n),vn.R(jn,{anchor:U(this,"data-menuanchor")}))}function Eo(n){var t=n.target;t&&C(t,"#fp-nav a")?me.call(t,n.e):Q(t,".fp-tooltip")?pe.call(t):(Q(t,ft)||null!=C(t,ft))&&ue.call(t,n.e)}f.reBuild=Ao,vn.D(Sn,(function(){Mo(),K("resize",Mo),vn.D(Tn,To)})),f.setLockAnchors=function(n){Tt().lockAnchors=n},vn.D(Sn,(function(){K("hashchange",Oo),vn.D(Tn,jo)})),vn.D(Sn,(function(){_("wheel",hi.Vn,ci()),vn.D(Dn,pi),vn.D(kn,gi)})),vn.D(Sn,(function(){vn.D(mn,Lo)})),vn.D(Sn,(function(){vn.D(mn,Eo)}));var Ro,Po,Fo=0;function zo(n){var t,e,i,o,r;if(!dn.V&&pn().I&&(rn(pn().C),!pn().B&&!pn().Kn&&(!Tt().autoScrolling||Tt().scrollBar))){var a=H(),u=function(n){var t=n>Fo?"down":"up";return Fo=n,hn({tn:n}),t}(a),l=0,c=a+w()/2,f=Kt.scrollHeight-w()===a,s=pn().C;if(hn({scrollY:a}),f)l=s.length-1;else if(a)for(var v=0;v=H()+w():o<=H())&&(m(pn().I.item,Gn)||(L(pn().I.item,Gn),D(W(pn().I.item),Gn))),e=(t=s[l]).item,!t.isActive){hn({U:!0});var d,h,p=pn().I.item,g=pn().I.index()+1,b=Nt(pn().I,e),y=t.anchor,S=t.index()+1,T=t.activeSlide,M={I:p,sectionIndex:S-1,anchorLink:y,element:e,leavingSection:g,direction:b,items:{origin:pn().I,destination:t}};T&&(h=T.anchor,d=T.index()),dn.G&&(L(e,Kn),D(W(e),Kn),Y(Tt().beforeLeave)&&ke("beforeLeave",M),Y(Tt().onLeave)&&Xt("onLeave",M),Y(Tt().afterLoad)&&Xt("afterLoad",M),ne(p),te(e),Jt(e),we(y,S-1),Tt().anchors.length&&hn({_:y}),Qe(),oe(d,h,y)),clearTimeout(Ro),Ro=setTimeout((function(){hn({U:!1})}),100)}Tt().fitToSection&&dn.G&&(clearTimeout(Po),Po=setTimeout((function(){dn.C.filter((function(n){var t=n.item.getBoundingClientRect();return Math.round(t.bottom)===Math.round(w())||0===Math.round(t.top)})).length||De()}),Tt().an))}}function Co(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){ce(n,t,"k")})):(ce(n,"all","k"),Tt().keyboardScrolling=n)}function Io(n){var t=n.index();void 0!==Tt().anchors[t]&&n.isActive&&we(Tt().anchors[t],t),Tt().menu&&Tt().css3&&null!=C(p(Tt().menu)[0],Hn)&&p(Tt().menu).forEach((function(n){Kt.appendChild(n)}))}function No(){var n,t,e=pn().I,i=pn().I.item;L(i,Gn),te(i),he(),Jt(i),t=qi((n=ko()).section),n.section&&t&&(void 0===t||t.index()!==A(Ce))||!Y(Tt().afterLoad)||Xt("afterLoad",{I:i,element:i,direction:null,anchorLink:e.anchor,sectionIndex:e.index(),items:{origin:pn().I,destination:pn().I}}),Y(Tt().afterRender)&&Xt("afterRender")}function Bo(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){ce(n,t,"m")})):ce(n,"all","m")}function Ho(){var n=ko(),t=n.section,e=n.gn;t?Tt().animateAnchor?Yi(t,e):go(t,e):vn.R(gn,null)}function Wo(){Xe(),Qe(),Tt().scrollBar=Tt().scrollBar||Tt().hybrid,xt(),function(){y(ln(St(),"body"),{height:"100%",position:"relative"}),L(St(),Bn),L(qt,_n),hn({en:w()}),D(St(),Un),ii();for(var n=pn().vn,t=0;t0&&oi(e)}Tt().fixedElements&&Tt().css3&&p(Tt().fixedElements).forEach((function(n){Kt.appendChild(n)})),Tt().navigation&&ge(),p('iframe[src*="youtube.com/embed/"]',St()).forEach((function(n){var t,e;e=U(t=n,"src"),t.setAttribute("src",e+(/\?/.test(e)?"&":"?")+"enablejsapi=1")})),Tt().scrollOverflow&&Ve.Tn()}(),Bo(!0),fo(!0),de(Tt().autoScrolling,"internal"),Ee(),ee(),"complete"===r.readyState&&Ho(),K("load",Ho),No(),Xe(),Qe()}function Vo(){var n=Tt().licenseKey;""===Tt().licenseKey.trim()?(v("error","Fullpage.js requires a `licenseKey` option. Read about it on the following URL:"),v("error","https://github.com/alvarotrigo/fullPage.js#options")):Tt()&&dn.Zn||r.domain.indexOf("alvarotrigo.com")>-1?n&&n.length:(v("error","Incorrect `licenseKey`. Get one for fullPage.js version 4 here:"),v("error","https://alvarotrigo.com/fullPage/pricing")),m(qt,_n)?v("error","Fullpage.js can only be initialized once and you are doing it multiple times!"):(Tt().continuousVertical&&(Tt().loopTop||Tt().loopBottom)&&(Tt().continuousVertical=!1,v("warn","Option `loopTop/loopBottom` is mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),!Tt().scrollOverflow||!Tt().scrollBar&&Tt().autoScrolling||v("warn","Options scrollBar:true and autoScrolling:false are mutually exclusive with scrollOverflow:true. Sections with scrollOverflow might not work well in Firefox"),!Tt().continuousVertical||!Tt().scrollBar&&Tt().autoScrolling||(Tt().continuousVertical=!1,v("warn","Scroll bars (`scrollBar:true` or `autoScrolling:false`) are mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),s.forEach((function(n){Tt()[n]&&v("warn","fullpage.js extensions require fullpage.extensions.min.js file instead of the usual fullpage.js. Requested: "+n)})),Tt().anchors.forEach((function(n){var t=[].slice.call(p("[name]")).filter((function(t){return U(t,"name")&&U(t,"name").toLowerCase()==n.toLowerCase()})),e=[].slice.call(p("[id]")).filter((function(t){return U(t,"id")&&U(t,"id").toLowerCase()==n.toLowerCase()}));if(e.length||t.length){v("error","data-anchor tags can not have the same value as any `id` element on the site (or `name` element for IE).");var i=e.length?"id":"name";(e.length||t.length)&&v("error",'"'+n+'" is is being used by another element `'+i+"` property")}})))}function Uo(n,t){var e;if(Kt=p("body")[0],qt=p("html")[0],Gt=p("html, body"),!m(qt,_n))return"touchWrapper",e="string"==typeof n?p(n)[0]:n,gt.touchWrapper=e,function(n){yt=g({},gt,n),bt=Object.assign({},yt)}(t),function(n){mt=n}("string"==typeof n?p(n)[0]:n),vn.R(yn),Vo(),f.getFullpageData=function(){return{options:Tt()}},f.version="4.0.22",f.test=Object.assign(f.test,{top:"0px",pn:"translate3d(0px, 0px, 0px)",Hn:function(){for(var n=[],t=0;t-1?"".concat(n,": 0;"):"",e='\n \n "),i=rn(dn.C),o=!dn.Zn||Tt().credits.enabled;i&&i.item&&o&&i.item.insertAdjacentHTML("beforeend",e)})),function(){vn.D(yn,(function(){var t,u,l;hn({Zn:(Tt().licenseKey,t=Tt().licenseKey,u=function(t){var e=parseInt("514").toString(16);if(!t||t.length<29||4===t.split(n[0]).length)return null;var i=["Each","for"][o()]().join(""),u=t[["split"]]("-"),l=[];u[i]((function(n,t){if(t<4){var i=function(n){var t=n[n.length-1],e=["NaN","is"][o()]().join("");return window[e](t)?r(t):function(n){return n-Kn.length}(t)}(n);l.push(i);var a=r(n[i]);if(1===t){var u=["pa","dS","t","art"].join("");a=a.toString()[u](2,"0")}e+=a,0!==t&&1!==t||(e+="-")}}));var c=0,f="";return t.split("-").forEach((function(n,t){if(t<4){for(var e=0,i=0;i<4;i++)i!==l[t]&&(e+=Math.abs(r(n[i])),isNaN(n[i])||c++);var o=a(e);f+=o}})),f+=a(c),{tt:new Date(e+"T00:00"),et:e.split("-")[2]===8*(Kn.length-2)+"",it:f}}(t),l=function(n){var t=i[o()]().join("");return n&&0===t.indexOf(n)&&n.length===t.length}(t),(u||l)&&(u&&e<=u.tt&&u.it===t.split(n[0])[4]||l||u.et)||!1)})}));var n=["-"],t="2024-0-31".split("-"),e=new Date(t[0],t[1],t[2]),i=["se","licen","-","v3","l","gp"];function o(){return[["re","verse"].join("")]["".length]}function r(n){return n?isNaN(n)?n.charCodeAt(0)-72:n:""}function a(n){var t=72+n;return t>90&&t<97&&(t+=15),String.fromCharCode(t).toUpperCase()}}(),f.setKeyboardScrolling=Co,f.shared.nt=No,f.setAllowScrolling=Bo,f.destroy=function(n){de(!1,"internal"),Bo(!0),fo(!1),Co(!1),L(St(),Un),vn.R(Tn),n&&(Vt(0),p("img[data-src], source[data-src], audio[data-src], iframe[data-src]",St()).forEach((function(n){un(n,"src")})),p("img[data-srcset]").forEach((function(n){un(n,"srcset")})),Z(p("#fp-nav, .fp-slidesNav, .fp-controlArrow")),y(Ot(pn().C),{height:"","background-color":"",padding:""}),y(Ot(pn().slides),{width:""}),y(St(),{height:"",position:"","-ms-touch-action":"","touch-action":""}),y(Gt,{overflow:"",height:""}),D(qt,_n),D(Kt,Wn+" fp-scrollable"),Kt.className.split(/\s+/).forEach((function(n){0===n.indexOf("fp-viewing")&&D(Kt,n)})),Ot(pn().hn).forEach((function(n){Tt().scrollOverflow&&Ve.In(n),D(n,"fp-table active fp-completely "+lt);var t=U(n,"data-fp-styles");t&&n.setAttribute("style",t),m(n,Yn)&&!wt&&n.removeAttribute("data-anchor")})),Bt(St()),[Qn,ot,et].forEach((function(n){p(n,St()).forEach((function(n){z(n)}))})),y(St(),{"-webkit-transition":"none",transition:"none"}),D(St(),Bn),o.scrollTo(0,0),[Yn,Jn,it].forEach((function(n){D(p("."+n),n)})))},o.fp_easings=g(o.fp_easings,{easeInOutCubic:function(n,t,e,i){return(n/=i/2)<1?e/2*n*n*n+t:e/2*((n-=2)*n*n+2)+t}}),o.jQuery&&function(n,t){n&&t?n.fn.fullpage=function(e){e=n.extend({},e,{$:n}),new t(this[0],e),Object.keys(f).forEach((function(n){Tt().$.fn.fullpage[n]=f[n]}))}:v("error","jQuery is required to use the jQuery fullpage adapter!")}(o.jQuery,Uo),Uo})); +!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(n="undefined"!=typeof globalThis?globalThis:n||self).fullpage=t()}(this,(function(){"use strict";var n,t,e,i;Array.prototype.find||Object.defineProperty(Array.prototype,"find",{value:function(n){if(null==this)throw new TypeError('"this" is null or not defined');var t=Object(this),e=t.length>>>0;if("function"!=typeof n)throw new TypeError("predicate must be a function");for(var i=arguments[1],o=0;o0?1:-1)*Math.floor(Math.abs(t)):t}(n);return Math.min(Math.max(t,0),e)},function(n){var e=this,o=Object(n);if(null==n)throw new TypeError("Array.from requires an array-like object - not null or undefined");var r,a=arguments.length>1?arguments[1]:void 0;if(void 0!==a){if(!t(a))throw new TypeError("Array.from: when provided, the second argument must be a function");arguments.length>2&&(r=arguments[2])}for(var u,l=i(o.length),c=t(e)?Object(new e(l)):new Array(l),f=0;f0||navigator.maxTouchPoints,c=!!window.MSInputMethodContext&&!!document.documentMode,f={test:{},shared:{}},s=["parallax","scrollOverflowReset","dragAndMove","offsetSections","fadingEffect","responsiveSlides","continuousHorizontal","interlockedSlides","scrollHorizontally","resetSliders","cards","dropEffect","waterEffect"];function v(n,t){o.console&&o.console[n]&&o.console[n]("fullPage: "+t)}function d(n){return"none"!==o.getComputedStyle(n).display}function h(n){return Array.from(n).filter((function(n){return d(n)}))}function p(n,t){return(t=arguments.length>1?t:document)?t.querySelectorAll(n):null}function g(n){n=n||{};for(var t=1,e=arguments.length;t>=0,t=String(void 0!==t?t:" "),this.length>n?String(this):((n-=this.length)>t.length&&(t+=Array.apply(null,Array(n)).map((function(){return t})).join("")),t.slice(0,n)+String(this))}),window.fp_utils={$:p,deepExtend:g,hasClass:m,getWindowHeight:w,css:y,prev:S,next:T,last:M,index:A,getList:x,hide:k,show:j,isArrayOrList:O,addClass:L,removeClass:D,appendTo:E,wrap:R,wrapAll:P,unwrap:z,closest:C,after:I,before:N,insertBefore:B,getScrollTop:H,siblings:W,preventDefault:V,isFunction:Y,trigger:$,matches:Q,toggle:X,createElementFromHTML:J,remove:Z,untilAll:nn,nextAll:tn,prevAll:en,showError:v};var fn=Object.freeze({__proto__:null,showError:v,isVisible:d,o:h,$:p,deepExtend:g,hasClass:m,getWindowHeight:w,u:b,css:y,prev:S,next:T,last:M,index:A,getList:x,hide:k,show:j,isArrayOrList:O,addClass:L,removeClass:D,appendTo:E,wrap:R,wrapAll:P,l:F,unwrap:z,closest:C,after:I,before:N,insertBefore:B,getScrollTop:H,siblings:W,preventDefault:V,v:U,h:_,p:K,g:q,S:G,isFunction:Y,trigger:$,matches:Q,toggle:X,createElementFromHTML:J,remove:Z,untilAll:nn,nextAll:tn,prevAll:en,toArray:on,T:rn,M:an,A:un,j:ln,O:cn});function sn(n){return sn="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},sn(n)}var vn={L:{},D:function(n,t){var e=this;return"object"!==sn(this.L[n])&&(this.L[n]=[]),this.L[n].push(t),function(){return e.removeListener(n,t)}},removeListener:function(n,t){if("object"===sn(this.L[n])){var e=this.L[n].indexOf(t);e>-1&&this.L[n].splice(e,1)}},R:function(n){for(var t=this,e=arguments.length,i=new Array(e>1?e-1:0),o=1;o
        ','
        '],controlArrowColor:"#fff",verticalCentered:!0,sectionsColor:[],paddingTop:0,paddingBottom:0,fixedElements:null,responsive:0,responsiveWidth:0,responsiveHeight:0,responsiveSlides:!1,parallax:!1,parallaxOptions:{type:"reveal",percentage:62,property:"translate"},cards:!1,cardsOptions:{perspective:100,fadeContent:!0,fadeBackground:!0},sectionSelector:".section",slideSelector:".slide",afterLoad:null,beforeLeave:null,onLeave:null,afterRender:null,afterResize:null,afterReBuild:null,afterSlideLoad:null,onSlideLeave:null,afterResponsive:null,onScrollOverflow:null,lazyLoading:!0,observer:!0,un:!0},wt=null,bt=!1,yt=g({},mt),St=null;function Tt(n){return wt}function Mt(){return St||mt}function At(){return yt}function xt(n,t,e){St[n]=t,"internal"!==e&&(yt[n]=t)}function kt(){if(!Mt().anchors.length){var n=p(Mt().sectionSelector.split(",").join("[data-anchor],")+"[data-anchor]",wt);n.length&&n.length===p(Mt().sectionSelector,wt).length&&(bt=!0,n.forEach((function(n){Mt().anchors.push(U(n,"data-anchor").toString())})))}if(!Mt().navigationTooltips.length){var t=p(Mt().sectionSelector.split(",").join("[data-tooltip],")+"[data-tooltip]",wt);t.length&&t.forEach((function(n){Mt().navigationTooltips.push(U(n,"data-tooltip").toString())}))}}var jt=function(n){this.anchor=n.anchor,this.item=n.item,this.index=n.index(),this.isLast=this.index===n.item.parentElement.querySelectorAll(n.selector).length-1,this.isFirst=!this.index,this.isActive=n.isActive},Ot=function(n,t){this.parent=this.parent||null,this.selector=t,this.anchor=U(n,"data-anchor")||Mt().anchors[A(n,Mt().sectionSelector)],this.item=n,this.isVisible=d(n),this.isActive=m(n,qn),this.ln=m(n,ut)||null!=p(lt,n)[0],this.cn=t===Mt().sectionSelector,this.sn=C(n,rt)||C(n,Wn),this.index=function(){return this.siblings().indexOf(this)}};function Lt(n){return n.map((function(n){return n.item}))}function Dt(n,t){return n.find((function(n){return n.item===t}))}Ot.prototype.siblings=function(){return this.cn?this.isVisible?dn.C:dn.vn:this.parent?this.parent.slides:0},Ot.prototype.prev=function(){var n=this.siblings(),t=(this.cn?n.indexOf(this):this.parent.slides.indexOf(this))-1;return t>=0?n[t]:null},Ot.prototype.next=function(){var n=this.siblings(),t=(this.cn?n.indexOf(this):this.parent.slides.indexOf(this))+1;return ti?"up":"down"}function Ht(n){return L(n,Un)}function Wt(n){return{"-webkit-transform":n,"-moz-transform":n,"-ms-transform":n,transform:n}}function Vt(n,t){t?Nt(Tt()):Ht(Tt()),clearTimeout(Et),y(Tt(),Wt(n)),f.test.pn=n,Et=setTimeout((function(){D(Tt(),Un)}),10)}function Ut(n){var t=Math.round(n);if(Mt().css3&&Mt().autoScrolling&&!Mt().scrollBar)Vt("translate3d(0px, -"+t+"px, 0px)",!1);else if(Mt().autoScrolling&&!Mt().scrollBar)y(Tt(),{top:-t+"px"}),f.test.top=-t+"px";else{var e=Ct(t);It(e.element,e.options)}}function _t(n,t){xt("scrollingSpeed",n,t)}f.setScrollingSpeed=_t;var Kt,qt=null,Gt=null,Yt=null;function $t(n,t,e,i){var r,a=function(n){return n.self!=o&&m(n,et)?n.scrollLeft:!Mt().autoScrolling||Mt().scrollBar?H():n.offsetTop}(n),u=t-a,l=!1,c=dn.q;hn({q:!0}),Kt&&window.cancelAnimationFrame(Kt),Kt=function(f){r||(r=f);var s=Math.floor(f-r);if(dn.q){var v=t;e&&(v=o.fp_easings[Mt().easing](s,a,u,e)),s<=e&&It(n,v),s0,r=i>2&&i'+ue(a.index(),"Section")+"";var l=Mt().navigationTooltips[a.index()];void 0!==l&&""!==l&&(i+='
        '+l+"
        "),i+=""}p("ul",e)[0].innerHTML=i;var c=p("li",p(Jn)[0])[pn().I.index()];L(p("a",c),qn)}function we(n){n.preventDefault&&V(n),hn({N:"verticalNav"});var t=A(C(this,"#fp-nav li"));vn.R(Ln,{destination:pn().C[t]})}function be(n,t){var e;e=n,Mt().menu&&Mt().menu.length&&p(Mt().menu).forEach((function(n){null!=n&&(D(p(Gn,n),qn),L(p('[data-menuanchor="'+e+'"]',n),qn))})),function(n,t){var e=p(Jn)[0];Mt().navigation&&null!=e&&"none"!==e.style.display&&(D(p(Gn,e),qn),L(n?p('a[href="#'+n+'"]',e):p("a",p("li",e)[t]),qn))}(n,t)}ce.m={up:!0,down:!0,left:!0,right:!0},ce.k=g({},ce.m),vn.D(mn,(function(n){var t=n.target;(Q(t,dt)||C(t,dt))&&ve.call(t,n)})),f.setRecordHistory=de,f.setAutoScrolling=he,f.test.setAutoScrolling=he,(new Date).getTime();var ye,Se,Te,Me,Ae,xe,ke=(Se=!0,Te=(new Date).getTime(),Me=!o.fullpage_api,function(n,t){var e=(new Date).getTime(),i="wheel"===n?Mt().scrollingSpeed:100;return Se=Me||e-Te>=i,Me=!o.fullpage_api,Se&&(ye=t(),Te=e),void 0===ye||ye});function je(n,t){if(Y(Mt().beforeLeave))return ke(pn().N,(function(){return Jt(n,t)}))}function Oe(n,t,e){var i=n.item;if(null!=i){var o,r,a=function(n){var t=n.offsetHeight,e=n.offsetTop,i=e,o=e>dn.tn,r=i-w()+t,a=Mt().bigSectionsDestination;return t>w()?(o||a)&&"bottom"!==a||(i=r):(o||dn.V&&null==T(n))&&(i=r),hn({tn:i}),i}(i),u={element:i,callback:t,isMovementUp:e,dtop:a,yMovement:Bt(pn().I,i),anchorLink:n.anchor,sectionIndex:n.index(),activeSlide:n.activeSlide?n.activeSlide.item:null,leavingSection:pn().I.index()+1,localIsResizing:dn.V,items:{origin:pn().I,destination:n},direction:null};if(!(pn().I.item==i&&!dn.V||Mt().scrollBar&&H()===u.dtop&&!m(i,"fp-auto-height"))){if(null!=u.activeSlide&&(o=U(u.activeSlide,"data-anchor"),r=A(u.activeSlide,null)),!u.localIsResizing){var l=u.yMovement;if(void 0!==e&&(l=e?"up":"down"),u.direction=l,Y(Mt().beforeLeave)&&!1===je("beforeLeave",u))return;if(Y(Mt().onLeave)&&!Jt("onLeave",u))return}Mt().autoScrolling&&Mt().continuousVertical&&void 0!==u.isMovementUp&&(!u.isMovementUp&&"up"==u.yMovement||u.isMovementUp&&"down"==u.yMovement)&&(u=function(n){hn({on:!0});var t=pn().I.item;return n.isMovementUp?N(t,tn(t,Qn)):I(t,en(t,Qn).reverse()),Ut(pn().I.item.offsetTop),function(){for(var n=p(tt),t=0;t-1&&!Ue.jn)return V(n),!1},An:function(){Ue.kn=dn.G},onLeave:function(){clearTimeout(Ce),Ue.jn=!1},afterLoad:function(){Ue.jn=!1,clearTimeout(Ce),Ce=setTimeout((function(){Ue.kn=dn.G}),200)},Rn:function(){r.activeElement===this.xn&&(this.xn.blur(),Ue.jn=!1)},Mn:function(){if(Mt().scrollOverflow&&Ue.kn){Ue.Rn();var n=Ue.Pn(pn().I.item);!n||a||l||(this.xn=n,requestAnimationFrame((function(){n.focus({Fn:!0}),Ue.jn=!0}))),Ue.kn=!1}},Tn:function(){Mt().scrollOverflowMacStyle&&!u&&L(qt,"fp-scroll-mac"),pn().hn.forEach((function(n){if(!(n.slides&&n.slides.length||m(n.item,"fp-auto-height-responsive")&&Fe())){var t,e=Ft(n.item),i=Ue.bn(n.item),o=(t=n).cn?t:t.parent;if(c){var r=i?"addClass":"removeClass";fn[r](o.item,ct),fn[r](n.item,ct)}else L(o.item,ct),L(n.item,ct);n.ln||(Ue.zn(e),Ue.Cn(e)),n.ln=!0}}))},Cn:function(n){Ue.Pn(n).addEventListener("scroll",Ue.In),n.addEventListener("wheel",Ue.Dn,{passive:!1}),n.addEventListener("keydown",Ue.En,{passive:!1})},zn:function(n){var t=document.createElement("div");t.className=ut,F(n,t),t.setAttribute("tabindex","-1")},Nn:function(n){var t=p(lt,n)[0];t&&(z(t),n.removeAttribute("tabindex"))},Pn:function(n){var t=Ft(n);return p(lt,t)[0]||t},ln:function(n){return m(n,ut)||null!=p(lt,n)[0]},yn:function(n){return n.cn&&n.activeSlide?n.activeSlide.ln:n.ln},bn:function(n){return Ue.Pn(n).scrollHeight>o.innerHeight},isScrolled:function(n,t){if(!dn.G)return!1;if(Mt().scrollBar)return!0;var e=Ue.Pn(t);if(!Mt().scrollOverflow||!m(e,ut)||m(t,"fp-noscroll")||m(Ft(t),"fp-noscroll"))return!0;var i=c?1:0,o=e.scrollTop,r="up"===n&&o<=0,a="down"===n&&e.scrollHeight<=Math.ceil(e.offsetHeight+o)+i,u=r||a;return u||(this.On=(new Date).getTime()),u},Bn:function(){this.Ln=(new Date).getTime();var n=this.Ln-Ue.On,t=(a||l)&&dn.J,e=dn.Z&&n>600;return t&&n>400||e},In:(We=0,function(n){var t=n.target.scrollTop,e="none"!==dn.Y?dn.Y:Weo?"left":"right"),l.direction=l.direction?l.direction:l.Hn,l.localIsResizing||hn({G:!1}),Mt().onSlideLeave&&!l.localIsResizing&&"none"!==l.Hn&&Y(Mt().onSlideLeave)&&!1===Jt("onSlideLeave",l)?hn({W:!1}):(L(t,qn),D(W(t),qn),Xe(),l.localIsResizing||(te(l.prevSlide),ee(t)),function(n){!Mt().loopHorizontal&&Mt().controlArrows&&(X(p(pt,n.section),0!==n.slideIndex),X(p(gt,n.section),null!=T(n.destiny)))}(l),a.isActive&&!l.localIsResizing&&re(l.slideIndex,l.slideAnchor,l.anchorLink),vn.R(Pn,l),function(n,t,e){var i,o,r=t.destinyPos;if(i=t.slidesNav,o=t.slideIndex,Mt().slidesNavigation&&null!=i&&(D(p(Gn,i),qn),L(p("a",p("li",i)[o]),qn)),hn({scrollX:Math.round(r.left)}),Mt().css3){var a="translate3d(-"+Math.round(r.left)+"px, 0px, 0px)";f.test.Wn[t.sectionIndex]=a,y(Nt(p(rt,n)),Wt(a)),clearTimeout(Ve),Ve=setTimeout((function(){Ge(t)}),Mt().scrollingSpeed)}else f.test.left[t.sectionIndex]=Math.round(r.left),$t(n,Math.round(r.left),Mt().scrollingSpeed,(function(){Ge(t)}))}(n,l))}function qe(){clearTimeout(Ve)}function Ge(n){n.localIsResizing||(Y(Mt().afterSlideLoad)&&Jt("afterSlideLoad",n),hn({G:!0}),Zt(n.destiny),vn.R(Cn,n)),hn({W:!1})}function Ye(n,t){_t(0,"internal"),void 0!==t&&hn({V:!0}),Ke(C(n,it),n),void 0!==t&&hn({V:!1}),_t(At().scrollingSpeed,"internal")}f.landscapeScroll=Ke,vn.D(Tn,(function(){vn.D(Rn,_e)}));var $e=null,Qe=null;function Xe(){dn.I=null,dn.C.map((function(n){var t=m(n.item,qn);n.isActive=t,n.ln=Ue.ln(n.item),t&&(dn.I=n),n.slides.length&&(n.activeSlide=null,n.slides.map((function(t){var e=m(t.item,qn);t.ln=Ue.ln(n.item),t.isActive=e,e&&(n.activeSlide=t)})))})),function(){var n=dn.I,t=!!dn.I&&dn.I.slides.length,e=dn.I?dn.I.activeSlide:null;if(!n&&dn.C.length&&!pn().B&&$e){var i=ni($e,dn.C);i&&(dn.I=i,dn.I.isActive=!0,L(dn.I.item,qn)),dn.I&&Ut(dn.I.item.offsetTop)}if(t&&!e&&Qe){var o=ni(Qe,dn.I.slides);o&&(dn.I.activeSlide=o,dn.I.activeSlide.isActive=!0,L(dn.I.activeSlide.item,qn)),dn.I.activeSlide&&Ye(dn.I.activeSlide.item,"internal")}}()}function Je(){var n=p(Mt().sectionSelector,Tt()),t=h(n),e=Array.from(n).map((function(n){return new ti(n)})),i=e.filter((function(n){return n.isVisible})),o=i.reduce((function(n,t){return n.concat(t.slides)}),[]);$e=Ze(dn.I),Qe=Ze(dn.I?dn.I.activeSlide:null),dn.P=t.length,dn.F=i.reduce((function(n,t){return n+t.slides.length}),0),dn.C=i,dn.vn=e,dn.slides=o,dn.hn=dn.C.concat(dn.slides)}function Ze(n){if(!n)return null;var t=n?n.item:null,e=n.cn?dn.vn:dn.I.Vn;if(t){var i=Dt(e,t);return i?i.index():null}return null}function ni(n,t){var e,i=n-1,o=n;do{if(e=t[i]||t[o])break;i-=1,o+=1}while(i>=0||o1&&(Mt().controlArrows&&function(n){var t=n.item,e=[J(Mt().controlArrowsHTML[0]),J(Mt().controlArrowsHTML[1])];I(p(it,t)[0],e),L(e,vt),L(e[0],ht),L(e[1],"fp-next"),"#fff"!==Mt().controlArrowColor&&(y(p(gt,t),{"border-color":"transparent transparent transparent "+Mt().controlArrowColor}),y(p(pt,t),{"border-color":"transparent "+Mt().controlArrowColor+" transparent transparent"})),Mt().loopHorizontal||k(p(pt,t))}(n),Mt().slidesNavigation&&function(n){var t=n.item,e=n.slides.length;E(J('
          '),t);var i=p(ft,t)[0];L(i,"fp-"+Mt().slidesNavPosition);for(var o=0;o'+ue(o,"Slide",p(nt,t)[o])+""),p("ul",i)[0]);y(i,{"margin-left":"-"+i.innerWidth/2+"px"});var r=n.activeSlide?n.activeSlide.index():0;L(p("a",p("li",i)[r]),qn)}(n)),i.forEach((function(n){y(n.item,{width:a+"%"}),Mt().verticalCentered&&ze(n)}));var c=n.activeSlide||null;null!=c&&dn.I&&(0!==dn.I.index()||0===dn.I.index()&&0!==c.index())?Ye(c.item,"internal"):L(e[0],qn)}ii.prototype=Ot.prototype,ii.prototype.constructor=ti;var ai={attributes:!1,subtree:!0,childList:!0,characterData:!0};function ui(){return h(p(Mt().slideSelector,Tt())).length!==pn().F}function li(n){var t=ui();(ui()||h(p(Mt().sectionSelector,Tt())).length!==pn().P)&&!dn.on&&(Mt().observer&&ei&&ei.disconnect(),Je(),Xe(),Mt().anchors=[],Z(p(Jn)),oi(),kt(),Mt().navigation&&me(),t&&(Z(p(ft)),Z(p(dt))),pn().C.forEach((function(n){n.slides.length?t&&ri(n):Ne(n)}))),Mt().observer&&ei&&p(Wn)[0]&&ei.observe(p(Wn)[0],ai)}vn.D(Tn,(function(){var n,t,e;Mt().observer&&"MutationObserver"in window&&p(Wn)[0]&&(n=p(Wn)[0],t=ai,(e=new MutationObserver(li)).observe(n,t),ei=e),vn.D(An,li)})),f.render=li;var ci=function(){var n=!1;try{var t=Object.defineProperty({},"passive",{get:function(){n=!0}});K("testPassive",null,t),G("testPassive",null,t)}catch(n){}return function(){return n}}();function fi(){return!!ci()&&{passive:!1}}var si,vi,di,hi,pi=(di=(new Date).getTime(),hi=[],{Un:function(n){var t=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,e=Math.max(-1,Math.min(1,t)),i=void 0!==n.wheelDeltaX||void 0!==n.deltaX;si=Math.abs(n.wheelDeltaX)149&&hi.shift(),hi.push(Math.abs(t));var a=r-di;di=r,a>200&&(hi=[])},_n:function(){var n=an(hi,10)>=an(hi,70);return!!hi.length&&n&&si},Kn:function(){return vi}});function gi(){var n=Mt().css3?H()+w():rn(pn().C).item.offsetTop+rn(pn().C).item.offsetHeight,t=Ct(n);f.test.top=-n+"px",hn({G:!1}),$t(t.element,t.options,Mt().scrollingSpeed,(function(){setTimeout((function(){hn({B:!0}),hn({G:!0})}),30)}))}function mi(){Tt().getBoundingClientRect().bottom>=0&&wi()}function wi(){var n=Ct(rn(pn().C).item.offsetTop);hn({G:!1}),$t(n.element,n.options,Mt().scrollingSpeed,(function(){hn({G:!0}),hn({B:!1}),hn({qn:!1})}))}var bi,yi,Si,Ti=(bi=!1,yi={},Si={},function(n,t,e){switch(n){case"set":yi[t]=(new Date).getTime(),Si[t]=e;break;case"isNewKeyframe":var i=(new Date).getTime();bi=i-yi[t]>Si[t]}return bi});function Mi(){var n=pn().I.next();n||!Mt().loopBottom&&!Mt().continuousVertical||(n=pn().C[0]),null!=n?Oe(n,null,!1):Tt().scrollHeightxi&&se().m.down&&Mi()),xi=n.pageY)}function ji(n){if(se().m[n]){var t="down"===n?Mi:Ai;Mt().scrollOverflow&&Ue.yn(pn().I)?Ue.isScrolled(n,pn().I.item)&&Ue.Bn()&&t():t()}}var Oi,Li,Di,Ei,Ri=0,Pi=0,Fi=0,zi=0,Ci=(o.PointerEvent&&(Ei={down:"pointerdown",move:"pointermove"}),Ei),Ii={Gn:"ontouchmove"in window?"touchmove":Ci?Ci.move:null,Yn:"ontouchstart"in window?"touchstart":Ci?Ci.down:null};function Ni(n){var t=C(n.target,Qn)||pn().I.item,e=Ue.yn(pn().I);if(Bi(n)){hn({J:!0,Z:!1}),Mt().autoScrolling&&(e&&!dn.G||Mt().scrollBar)&&V(n);var i=Vi(n);Fi=i.y,zi=i.x;var r=Math.abs(Ri-Fi)>o.innerHeight/100*Mt().touchSensitivity,a=Math.abs(Pi-zi)>b()/100*Mt().touchSensitivity,u=p(it,t).length&&Math.abs(Pi-zi)>Math.abs(Ri-Fi),l=Ri>Fi?"down":"up";hn({Y:u?Pi>zi?"right":"left":l}),u?!dn.W&&a&&(Pi>zi?se().m.right&&vn.R(bn,{section:t}):se().m.left&&vn.R(wn,{section:t})):Mt().autoScrolling&&dn.G&&r&&ji(l)}}function Bi(n){return void 0===n.pointerType||"mouse"!=n.pointerType}function Hi(n){if(Mt().fitToSection&&hn({q:!1}),Bi(n)){var t=Vi(n);Ri=t.y,Pi=t.x}K("touchend",Wi)}function Wi(){G("touchend",Wi),hn({J:!1})}function Vi(n){var t={};return t.y=void 0!==n.pageY&&(n.pageY||n.pageX)?n.pageY:n.touches[0].pageY,t.x=void 0!==n.pageX&&(n.pageY||n.pageX)?n.pageX:n.touches[0].pageX,l&&Bi(n)&&Mt().scrollBar&&void 0!==n.touches&&(t.y=n.touches[0].pageY,t.x=n.touches[0].pageX),t}function Ui(n){Mt().autoScrolling&&Bi(n)&&se().m.up&&(dn.G||V(n))}function _i(n,t){var e=null==t?pn().I.item:t,i=Dt(dn.C,e),o=p(it,e)[0];if(!(null==o||dn.W||i.slides.length<2)){var r=i.activeSlide,a="left"===n?r.prev():r.next();if(!a){if(!Mt().loopHorizontal)return;a="left"===n?rn(i.slides):i.slides[0]}hn({W:!f.test.wn}),Ke(o,a.item,n)}}function Ki(n){_i("left",n)}function qi(n){_i("right",n)}function Gi(n){var t=pn().C.filter((function(t){return t.anchor===n}))[0];if(!t){var e=void 0!==n?n-1:0;t=pn().C[e]}return t}function Yi(n){null!=n&&Ke(C(n,it),n)}function $i(n,t){var e=Gi(n);if(null!=e){var i=function(n,t){var e=t.slides.filter((function(t){return t.anchor===n}))[0];return null==e&&(n=void 0!==n?n:0,e=t.slides[n]),e?e.item:null}(t,e);e.anchor&&e.anchor===dn._||m(e.item,qn)?Yi(i):Oe(e,(function(){Yi(i)}))}}function Qi(n,t){var e=Gi(n);void 0!==t?$i(n,t):null!=e&&Oe(e)}function Xi(){clearTimeout(Li),q("keydown",Ji),q("keyup",Zi)}function Ji(n){clearTimeout(Li);var t=n.keyCode,e=[37,39].indexOf(t)>-1,i=Mt().autoScrolling||Mt().fitToSection||e;9===t?function(n){var t=n.shiftKey,e=r.activeElement,i=oo(Ft(pn().I.item));function o(n){return V(n),i[0]?i[0].focus():null}if(dn.G){if(!function(n){var t=oo(r),e=t.indexOf(r.activeElement),i=t[n.shiftKey?e-1:e+1],o=C(i,nt),a=C(i,Qn);return!o&&!a}(n)){e?null==C(e,".fp-section.active,.fp-section.active .fp-slide.active")&&(e=o(n)):o(n);var a=e==i[0],u=e==i[i.length-1],l=t&&a;if(l||!t&&u){V(n);var c=function(n){var t,e=n?"prevPanel":"nextPanel",i=[],o=zt((dn.I&&dn.I.activeSlide?dn.I.activeSlide:dn.I)[e]());do{(i=oo(o.item)).length&&(t={$n:o,Qn:i[n?i.length-1:0]}),o=zt(o[e]())}while(o&&0===i.length);return t}(l),f=c?c.$n:null;if(f){var s=f.cn?f:f.parent;vn.R(kn,{Xn:s.index()+1,slideAnchor:f.cn?0:f.index()}),Di=c.Qn,V(n)}}}}else V(n)}(n):!cn()&&Mt().keyboardScrolling&&i&&(Oi=n.ctrlKey,Li=setTimeout((function(){!function(n){var t=n.shiftKey,e=r.activeElement,i=Q(e,"video")||Q(e,"audio"),o=Ue.isScrolled("up",pn().I.item),a=Ue.isScrolled("down",pn().I.item),u=[37,39].indexOf(n.keyCode)>-1;if(function(n){(function(n){return[40,38,32,33,34].indexOf(n.keyCode)>-1&&!dn.B})(n)&&!C(n.target,lt)&&n.preventDefault()}(n),dn.G||u)switch(hn({N:"keydown"}),n.keyCode){case 38:case 33:se().k.up&&o?dn.B?vn.R(jn,{e:n}):Ai():Ue.Mn();break;case 32:if(t&&se().k.up&&!i&&o){Ai();break}case 40:case 34:if(se().k.down&&a){if(dn.B)return;32===n.keyCode&&i||Mi()}else Ue.Mn();break;case 36:se().k.up&&Qi(1);break;case 35:se().k.down&&Qi(pn().C.length);break;case 37:se().k.left&&Ki();break;case 39:se().k.right&&qi()}}(n)}),0))}function Zi(n){dn.nn&&(Oi=n.ctrlKey)}function no(){hn({nn:!1}),Oi=!1}function to(n){io()}function eo(n){C(Di,nt)&&!C(Di,tt)||io()}function io(){Di&&(Di.focus(),Di=null)}function oo(n){return[].slice.call(p('a[href], area[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), button:not([disabled]), iframe, object, embed, [tabindex="0"], summary:not([disabled]), [contenteditable]',n)).filter((function(n){return"-1"!==U(n,"tabindex")&&null!==n.offsetParent}))}f.moveSlideLeft=Ki,f.moveSlideRight=qi,f.moveTo=Qi,vn.D(Tn,(function(){K("blur",no),_("keydown",Ji),_("keyup",Zi),vn.D(Mn,Xi),vn.D(Cn,to),vn.D(zn,eo)}));var ro=(new Date).getTime(),ao=[];function uo(n){n?(function(){var n,t="";o.addEventListener?n="addEventListener":(n="attachEvent",t="on");var e="onwheel"in r.createElement("div")?"wheel":void 0!==r.onmousewheel?"mousewheel":"DOMMouseScroll",i=fi();"DOMMouseScroll"==e?r[n](t+"MozMousePixelScroll",lo,i):r[n](t+e,lo,i)}(),Tt().addEventListener("mousedown",co),Tt().addEventListener("mouseup",fo)):(r.addEventListener?(q("mousewheel",lo,!1),q("wheel",lo,!1),q("MozMousePixelScroll",lo,!1)):r.detachEvent("onmousewheel",lo),Tt().removeEventListener("mousedown",co),Tt().removeEventListener("mouseup",fo))}function lo(n){var t=(new Date).getTime(),e=m(p(".fp-completely")[0],"fp-normal-scroll"),i=function(n,t){(new Date).getTime();var e=pn().B&&n.getBoundingClientRect().bottom>=0&&"up"===pi.Kn(),i=pn().qn;if(i)return V(t),!1;if(pn().B){if(e){var o;if(!(i||Ti("isNewKeyframe","beyondFullpage")&&pi._n()))return(o=Ct(rn(pn().C).item.offsetTop+rn(pn().C).item.offsetHeight)).element.scrollTo(0,o.options),hn({qn:!1}),V(t),!1;if(pi._n())return e=!1,hn({qn:!0}),hn({N:"wheel"}),wi(),V(t),!1}else Ti("set","beyondFullpage",1e3);if(!i&&!e)return!0}}(Tt(),n);if(dn.Z||hn({J:!1,Z:!0,Y:"none"}),!se().m.down&&!se().m.up)return V(n),!1;if(i)return!0;if(!1===i)return V(n),!1;if(Mt().autoScrolling&&!Oi&&!e){var r=(n=n||o.event).wheelDelta||-n.deltaY||-n.detail,a=Math.max(-1,Math.min(1,r)),u=void 0!==n.wheelDeltaX||void 0!==n.deltaX,l=Math.abs(n.wheelDeltaX)0?"up":"none";ao.length>149&&ao.shift(),ao.push(Math.abs(r)),V(n);var f=t-ro;return ro=t,f>200&&(ao=[]),hn({X:c}),dn.G&&an(ao,10)>=an(ao,70)&&l&&(hn({N:"wheel"}),ji(a<0?"down":"up")),!1}Mt().fitToSection&&hn({q:!1})}function co(n){var t;2==n.which&&(t=n.pageY,xi=t,Tt().addEventListener("mousemove",ki))}function fo(n){2==n.which&&Tt().removeEventListener("mousemove",ki)}function so(n){n?(uo(!0),function(){if(Ii.Gn&&(a||l)){Mt().autoScrolling&&(qt.removeEventListener(Ii.Gn,Ui,{passive:!1}),qt.addEventListener(Ii.Gn,Ui,{passive:!1}));var n=Mt().touchWrapper;n.removeEventListener(Ii.Yn,Hi),n.removeEventListener(Ii.Gn,Ni,{passive:!1}),n.addEventListener(Ii.Yn,Hi),n.addEventListener(Ii.Gn,Ni,{passive:!1})}}()):(uo(!1),function(){if(Ii.Gn&&(a||l)){Mt().autoScrolling&&(qt.removeEventListener(Ii.Gn,Ni,{passive:!1}),qt.removeEventListener(Ii.Gn,Ui,{passive:!1}));var n=Mt().touchWrapper;n.removeEventListener(Ii.Yn,Hi),n.removeEventListener(Ii.Gn,Ni,{passive:!1})}}())}f.setMouseWheelScrolling=uo;var vo=!0;function ho(){["mouseenter","touchstart","mouseleave","touchend"].forEach((function(n){q(n,go,!0)}))}function po(n,t){document["fp_"+n]=t,_(n,go,!0)}function go(n){var t=n.type,e=!1,i="mouseleave"===t?n.toElement||n.relatedTarget:n.target;i!=document&&i?("touchend"===t&&(vo=!1,setTimeout((function(){vo=!0}),800)),("mouseenter"!==t||vo)&&(Mt().normalScrollElements.split(",").forEach((function(n){if(!e){var t=Q(i,n),o=C(i,n);(t||o)&&(f.shared.Jn||so(!1),f.shared.Jn=!0,e=!0)}})),!e&&f.shared.Jn&&(so(!0),f.shared.Jn=!1))):so(!0)}function mo(n,t){_t(0,"internal"),Qi(n,t),_t(At().scrollingSpeed,"internal")}vn.D(Tn,(function(){Mt().normalScrollElements&&(["mouseenter","touchstart"].forEach((function(n){po(n,!1)})),["mouseleave","touchend"].forEach((function(n){po(n,!0)}))),vn.D(Mn,ho)})),f.silentMoveTo=mo;var wo,bo,yo=w(),So=b(),To=!1;function Mo(){clearTimeout(wo),clearTimeout(bo),G("resize",Ao)}function Ao(){To||(Mt().autoScrolling&&!Mt().scrollBar||!Mt().fitToSection)&&ko(w()),function(){if(a)for(var n=0;n<4;n++)bo=setTimeout((function(){window.requestAnimationFrame((function(){Mt().autoScrolling&&!Mt().scrollBar&&(hn({V:!0}),mo(dn.I.index()+1),hn({V:!1}))}))}),200*n)}(),To=!0,clearTimeout(wo),wo=setTimeout((function(){!function(){if(hn({V:!0}),ko(""),Mt().autoScrolling||dn.B||function(){if(!Mt().autoScrolling||Mt().scrollBar){var n=.01*o.innerHeight;r.documentElement.style.setProperty("--vh","".concat(n,"px"))}}(),vn.R(An),Xe(),Re(),a){var n=r.activeElement;if(!Q(n,"textarea")&&!Q(n,"input")&&!Q(n,"select")){var t=w();Math.abs(t-yo)>20*Math.max(yo,t)/100&&(xo(!0),yo=t)}}else e=w(),i=b(),dn.en===e&&So===i||(hn({en:e}),So=i,xo(!0));var e,i;hn({V:!1})}(),To=!1}),400)}function xo(n){if(!m(Tt(),_n)){hn({V:!0,en:w(),Zn:b()});for(var t=pn().C,e=0;e1&&Ke(r,i.activeSlide.item)}Mt().scrollOverflow&&Ue.Tn();var a=pn().I.index();dn.B||a&&mo(a+1),hn({V:!1}),Y(Mt().afterResize)&&n&&Mt().afterResize.call(Tt(),o.innerWidth,o.innerHeight),Y(Mt().afterReBuild)&&!n&&Mt().afterReBuild.call(Tt()),$(Tt(),"afterRebuild")}}function ko(n){var t=""===n?"":n+"px";pn().C.forEach((function(n){y(n.item,{height:t})}))}function jo(){var n,t,e=o.location.hash;if(e.length){var i=e.replace("#","").split("/"),r=e.indexOf("#/")>-1;n=r?"/"+i[1]:decodeURIComponent(i[0]);var a=r?i[2]:i[1];a&&a.length&&(t=decodeURIComponent(a))}return{section:n,gn:t}}function Oo(){G("hashchange",Lo)}function Lo(){if(!dn.U&&!Mt().lockAnchors){var n=jo(),t=n.section,e=n.gn,i=void 0===dn._,o=void 0===dn._&&void 0===e&&!dn.W;t&&t.length&&(t&&t!==dn._&&!i||o||!dn.W&&dn.K!=e)&&vn.R(kn,{Xn:t,slideAnchor:e})}}function Do(n){var t=n.target;C(t,Mt().menu+" [data-menuanchor]")&&Eo.call(t,n.e)}function Eo(n){if(hn({N:"menu"}),p(Mt().menu)[0]&&(Mt().lockAnchors||!Mt().anchors.length)){V(n);var t=C(this,"[data-menuanchor]");vn.R(On,{anchor:U(t,"data-menuanchor")})}}function Ro(n){var t=n.target;t&&C(t,"#fp-nav a")?we.call(t,n.e):Q(t,".fp-tooltip")?ge.call(t):(Q(t,st)||null!=C(t,st))&&le.call(t,n.e)}f.reBuild=xo,vn.D(Tn,(function(){Ao(),K("resize",Ao),vn.D(Mn,Mo)})),f.setLockAnchors=function(n){Mt().lockAnchors=n},vn.D(Tn,(function(){K("hashchange",Lo),vn.D(Mn,Oo)})),vn.D(Tn,(function(){_("wheel",pi.Un,fi()),vn.D(En,gi),vn.D(jn,mi)})),vn.D(Tn,(function(){vn.D(mn,Do)})),vn.D(Tn,(function(){vn.D(mn,Ro)}));var Po,Fo,zo=0;function Co(n){var t,e,i,o,r;if(!dn.V&&pn().I&&(rn(pn().C),!pn().B&&!pn().qn&&(!Mt().autoScrolling||Mt().scrollBar))){var a=H(),u=function(n){var t=n>zo?"down":"up";return zo=n,hn({tn:n}),t}(a),l=0,c=a+w()/2,f=qt.scrollHeight-w()===a,s=pn().C;if(hn({scrollY:a}),f)l=s.length-1;else if(a)for(var v=0;v=H()+w():o<=H())&&(m(pn().I.item,Yn)||(L(pn().I.item,Yn),D(W(pn().I.item),Yn))),e=(t=s[l]).item,!t.isActive){hn({U:!0});var d,h,p=pn().I.item,g=pn().I.index()+1,b=Bt(pn().I,e),y=t.anchor,S=t.index()+1,T=t.activeSlide,M={I:p,sectionIndex:S-1,anchorLink:y,element:e,leavingSection:g,direction:b,items:{origin:pn().I,destination:t}};T&&(h=T.anchor,d=T.index()),dn.G&&(L(e,qn),D(W(e),qn),Y(Mt().beforeLeave)&&je("beforeLeave",M),Y(Mt().onLeave)&&Jt("onLeave",M),Y(Mt().afterLoad)&&Jt("afterLoad",M),te(p),ee(e),Zt(e),be(y,S-1),Mt().anchors.length&&hn({_:y}),Xe(),re(d,h,y)),clearTimeout(Po),Po=setTimeout((function(){hn({U:!1})}),100)}Mt().fitToSection&&dn.G&&(clearTimeout(Fo),Fo=setTimeout((function(){dn.C.filter((function(n){var t=n.item.getBoundingClientRect();return Math.round(t.bottom)===Math.round(w())||0===Math.round(t.top)})).length||Ee()}),Mt().an))}}function Io(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){fe(n,t,"k")})):(fe(n,"all","k"),Mt().keyboardScrolling=n)}function No(n){var t=n.index();void 0!==Mt().anchors[t]&&n.isActive&&be(Mt().anchors[t],t),Mt().menu&&Mt().css3&&null!=C(p(Mt().menu)[0],Wn)&&p(Mt().menu).forEach((function(n){qt.appendChild(n)}))}function Bo(){var n,t,e=pn().I,i=pn().I.item;L(i,Yn),ee(i),pe(),Zt(i),t=Gi((n=jo()).section),n.section&&t&&(void 0===t||t.index()!==A(Ie))||!Y(Mt().afterLoad)||Jt("afterLoad",{I:i,element:i,direction:null,anchorLink:e.anchor,sectionIndex:e.index(),items:{origin:pn().I,destination:pn().I}}),Y(Mt().afterRender)&&Jt("afterRender")}function Ho(n,t){void 0!==t?(t=t.replace(/ /g,"").split(",")).forEach((function(t){fe(n,t,"m")})):fe(n,"all","m")}function Wo(){var n=jo(),t=n.section,e=n.gn;t?Mt().animateAnchor?$i(t,e):mo(t,e):vn.R(gn,null)}function Vo(){Je(),Xe(),Mt().scrollBar=Mt().scrollBar||Mt().hybrid,kt(),function(){y(ln(Tt(),"body"),{height:"100%",position:"relative"}),L(Tt(),Hn),L(Gt,Kn),hn({en:w()}),D(Tt(),_n),oi();for(var n=pn().vn,t=0;t0&&ri(e)}Mt().fixedElements&&Mt().css3&&p(Mt().fixedElements).forEach((function(n){qt.appendChild(n)})),Mt().navigation&&me(),p('iframe[src*="youtube.com/embed/"]',Tt()).forEach((function(n){var t,e;e=U(t=n,"src"),t.setAttribute("src",e+(/\?/.test(e)?"&":"?")+"enablejsapi=1")})),Mt().scrollOverflow&&Ue.Tn()}(),Ho(!0),so(!0),he(Mt().autoScrolling,"internal"),Re(),ie(),"complete"===r.readyState&&Wo(),K("load",Wo),Bo(),Je(),Xe()}function Uo(){var n=Mt().licenseKey;""===Mt().licenseKey.trim()?(v("error","Fullpage.js requires a `licenseKey` option. Read about it on the following URL:"),v("error","https://github.com/alvarotrigo/fullPage.js#options")):Mt()&&dn.nt||r.domain.indexOf("alvarotrigo.com")>-1?n&&n.length:(v("error","Incorrect `licenseKey`. Get one for fullPage.js version 4 here:"),v("error","https://alvarotrigo.com/fullPage/pricing")),m(Gt,Kn)?v("error","Fullpage.js can only be initialized once and you are doing it multiple times!"):(Mt().continuousVertical&&(Mt().loopTop||Mt().loopBottom)&&(Mt().continuousVertical=!1,v("warn","Option `loopTop/loopBottom` is mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),!Mt().scrollOverflow||!Mt().scrollBar&&Mt().autoScrolling||v("warn","Options scrollBar:true and autoScrolling:false are mutually exclusive with scrollOverflow:true. Sections with scrollOverflow might not work well in Firefox"),!Mt().continuousVertical||!Mt().scrollBar&&Mt().autoScrolling||(Mt().continuousVertical=!1,v("warn","Scroll bars (`scrollBar:true` or `autoScrolling:false`) are mutually exclusive with `continuousVertical`; `continuousVertical` disabled")),s.forEach((function(n){Mt()[n]&&v("warn","fullpage.js extensions require fullpage.extensions.min.js file instead of the usual fullpage.js. Requested: "+n)})),Mt().anchors.forEach((function(n){var t=[].slice.call(p("[name]")).filter((function(t){return U(t,"name")&&U(t,"name").toLowerCase()==n.toLowerCase()})),e=[].slice.call(p("[id]")).filter((function(t){return U(t,"id")&&U(t,"id").toLowerCase()==n.toLowerCase()}));if(e.length||t.length){v("error","data-anchor tags can not have the same value as any `id` element on the site (or `name` element for IE).");var i=e.length?"id":"name";(e.length||t.length)&&v("error",'"'+n+'" is is being used by another element `'+i+"` property")}})))}function _o(n,t){var e;if(qt=p("body")[0],Gt=p("html")[0],Yt=p("html, body"),!m(Gt,Kn))return"touchWrapper",e="string"==typeof n?p(n)[0]:n,mt.touchWrapper=e,function(n){St=g({},mt,n),yt=Object.assign({},St)}(t),function(n){wt=n}("string"==typeof n?p(n)[0]:n),vn.R(yn),Uo(),f.getFullpageData=function(){return{options:Mt()}},f.version="4.0.23",f.test=Object.assign(f.test,{top:"0px",pn:"translate3d(0px, 0px, 0px)",Wn:function(){for(var n=[],t=0;t-1?"".concat(n,": 0;"):"",e='\n \n "),i=rn(dn.C),o=!dn.nt||Mt().credits.enabled;i&&i.item&&o&&i.item.insertAdjacentHTML("beforeend",e)})),function(){vn.D(yn,(function(){var t,u,l;hn({nt:(Mt().licenseKey,t=Mt().licenseKey,u=function(t){var e=parseInt("514").toString(16);if(!t||t.length<29||4===t.split(n[0]).length)return null;var i=["Each","for"][o()]().join(""),u=t[["split"]]("-"),l=[];u[i]((function(n,t){if(t<4){var i=function(n){var t=n[n.length-1],e=["NaN","is"][o()]().join("");return window[e](t)?r(t):function(n){return n-qn.length}(t)}(n);l.push(i);var a=r(n[i]);if(1===t){var u=["pa","dS","t","art"].join("");a=a.toString()[u](2,"0")}e+=a,0!==t&&1!==t||(e+="-")}}));var c=0,f="";return t.split("-").forEach((function(n,t){if(t<4){for(var e=0,i=0;i<4;i++)i!==l[t]&&(e+=Math.abs(r(n[i])),isNaN(n[i])||c++);var o=a(e);f+=o}})),f+=a(c),{et:new Date(e+"T00:00"),it:e.split("-")[2]===8*(qn.length-2)+"",ot:f}}(t),l=function(n){var t=i[o()]().join("");return n&&0===t.indexOf(n)&&n.length===t.length}(t),(u||l)&&(u&&e<=u.et&&u.ot===t.split(n[0])[4]||l||u.it)||!1)})}));var n=["-"],t="2024-5-20".split("-"),e=new Date(t[0],t[1],t[2]),i=["se","licen","-","v3","l","gp"];function o(){return[["re","verse"].join("")]["".length]}function r(n){return n?isNaN(n)?n.charCodeAt(0)-72:n:""}function a(n){var t=72+n;return t>90&&t<97&&(t+=15),String.fromCharCode(t).toUpperCase()}}(),vn.D(Sn,(function(){Io(!0)})),f.setKeyboardScrolling=Io,f.shared.tt=Bo,f.setAllowScrolling=Ho,f.destroy=function(n){he(!1,"internal"),Ho(!0),so(!1),Io(!1),L(Tt(),_n),vn.R(Mn),n&&(Ut(0),p("img[data-src], source[data-src], audio[data-src], iframe[data-src]",Tt()).forEach((function(n){un(n,"src")})),p("img[data-srcset]").forEach((function(n){un(n,"srcset")})),Z(p("#fp-nav, .fp-slidesNav, .fp-controlArrow")),y(Lt(pn().C),{height:"","background-color":"",padding:""}),y(Lt(pn().slides),{width:""}),y(Tt(),{height:"",position:"","-ms-touch-action":"","touch-action":""}),y(Yt,{overflow:"",height:""}),D(Gt,Kn),D(qt,Vn+" fp-scrollable"),qt.className.split(/\s+/).forEach((function(n){0===n.indexOf("fp-viewing")&&D(qt,n)})),Lt(pn().hn).forEach((function(n){Mt().scrollOverflow&&Ue.Nn(n),D(n,"fp-table active fp-completely "+ct);var t=U(n,"data-fp-styles");t&&n.setAttribute("style",t),m(n,$n)&&!bt&&n.removeAttribute("data-anchor")})),Ht(Tt()),[Xn,rt,it].forEach((function(n){p(n,Tt()).forEach((function(n){z(n)}))})),y(Tt(),{"-webkit-transition":"none",transition:"none"}),D(Tt(),Hn),o.scrollTo(0,0),[$n,Zn,ot].forEach((function(n){D(p("."+n),n)})))},o.fp_easings=g(o.fp_easings,{easeInOutCubic:function(n,t,e,i){return(n/=i/2)<1?e/2*n*n*n+t:e/2*((n-=2)*n*n+2)+t}}),o.jQuery&&function(n,t){n&&t?n.fn.fullpage=function(e){e=n.extend({},e,{$:n}),new t(this[0],e),Object.keys(f).forEach((function(n){Mt().$.fn.fullpage[n]=f[n]}))}:v("error","jQuery is required to use the jQuery fullpage adapter!")}(o.jQuery,_o),_o})); diff --git a/lang/brazilian-portuguese/README.md b/lang/brazilian-portuguese/README.md index ce91e7d42..1399c5efd 100644 --- a/lang/brazilian-portuguese/README.md +++ b/lang/brazilian-portuguese/README.md @@ -18,7 +18,7 @@ --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal Donate](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -385,7 +385,8 @@ Então você poderá usá-los e configurá-los conforme explicado em [Opções]( ## Opções -- `licenseKey`: (padrão `null`). **Esta opção é obrigatória.** Se você usar fullPage em um projeto de código não aberto, deverá usar a chave de licença fornecida na compra da licença comercial fullPage. Se o seu projeto for de código aberto e for compatível com a licença GPLv3, você pode usar a opção `gplv3-license`. Leia mais sobre licenças [aqui](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#licença) e [no site](https://alvarotrigo.com/fullPage/pricing/). Exemplo de uso: +### licenseKey: +(padrão `null`). **Esta opção é obrigatória.** Se você usar fullPage em um projeto de código não aberto, deverá usar a chave de licença fornecida na compra da licença comercial fullPage. Se o seu projeto for de código aberto e for compatível com a licença GPLv3, você pode usar a opção `gplv3-license`. Leia mais sobre licenças [aqui](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#licença) e [no site](https://alvarotrigo.com/fullPage/pricing/). Exemplo de uso: ```javascript new fullpage('#fullpage', { @@ -393,15 +394,20 @@ new fullpage('#fullpage', { }); ``` -- `controlArrows`: (padrão `true`) Determina se as setas de controle devem ser usadas para mover os slides para a direita ou para a esquerda. +### controlArrows: +(padrão `true`) Determina se as setas de controle devem ser usadas para mover os slides para a direita ou para a esquerda. -- `controlArrowsHTML`: (padrão `['
          ', '
          '],`). Fornece uma maneira de definir a estrutura HTML e as classes que você deseja aplicar às setas de controle para seções com slides horizontais. A matriz contém a estrutura para ambas as setas. O primeiro item é a seta para a esquerda e o segundo, a seta para a direita. +### controlArrowsHTML: +(padrão `['
          ', '
          '],`). Fornece uma maneira de definir a estrutura HTML e as classes que você deseja aplicar às setas de controle para seções com slides horizontais. A matriz contém a estrutura para ambas as setas. O primeiro item é a seta para a esquerda e o segundo, a seta para a direita. -- `verticalCentered`: (padrão `true`) Centralização vertical do conteúdo usando flexbox. Você pode querer envolver seu conteúdo em um `div` para evitar possíveis problemas. (Usa `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered: +(padrão `true`) Centralização vertical do conteúdo usando flexbox. Você pode querer envolver seu conteúdo em um `div` para evitar possíveis problemas. (Usa `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed`: (padrão `700`) Velocidade em milissegundos para as transições de rolagem. +### scrollingSpeed: +(padrão `700`) Velocidade em milissegundos para as transições de rolagem. -- `sectionsColor`: (padrão `none`) Defina a propriedade CSS `background-color` para cada seção. +### sectionsColor: +(padrão `none`) Defina a propriedade CSS `background-color` para cada seção. Example: ```javascript new fullpage('#fullpage', { @@ -409,58 +415,82 @@ new fullpage('#fullpage', { }); ``` -- `anchors`: (padrão `[]`) Define os links âncora (#example) a serem mostrados na URL de cada seção. O valor das âncoras deve ser único. A posição das âncoras na matriz definirá em quais seções a âncora será aplicada. (segunda posição para a segunda seção e assim por diante). O uso de âncoras de navegação para frente e para trás também será possível através do navegador. Essa opção também permite que os usuários marquem uma seção ou slide específico. **Cuidado!** âncoras não podem ter o mesmo valor que qualquer elemento de ID no site (ou elemento NAME para IE). +### anchors: +(padrão `[]`) Define os links âncora (#example) a serem mostrados na URL de cada seção. O valor das âncoras deve ser único. A posição das âncoras na matriz definirá em quais seções a âncora será aplicada. (segunda posição para a segunda seção e assim por diante). O uso de âncoras de navegação para frente e para trás também será possível através do navegador. Essa opção também permite que os usuários marquem uma seção ou slide específico. **Cuidado!** âncoras não podem ter o mesmo valor que qualquer elemento de ID no site (ou elemento NAME para IE). Agora as âncoras podem ser definidas diretamente na estrutura HTML usando o atributo `data-anchor` conforme explicado aqui. -- `lockAnchors`: (padrão `false`) Determina se as âncoras na URL terão algum efeito na biblioteca. Você ainda pode usar âncoras internamente para suas próprias funções e retornos de chamada, mas elas não terão nenhum efeito na rolagem do site. Útil se você quiser combinar fullPage.js com outros plugins usando âncora na URL. +### lockAnchors: +(padrão `false`) Determina se as âncoras na URL terão algum efeito na biblioteca. Você ainda pode usar âncoras internamente para suas próprias funções e retornos de chamada, mas elas não terão nenhum efeito na rolagem do site. Útil se você quiser combinar fullPage.js com outros plugins usando âncora na URL. **Importante** É útil entender que os valores no array de opções `anchors` se correlacionam diretamente com o elemento com a classe `.section` por sua posição na marcação. -- `easing`: (padrão `easeInOutCubic`) Define o efeito de transição a ser usado para a rolagem vertical e horizontal. +### easing: +(padrão `easeInOutCubic`) Define o efeito de transição a ser usado para a rolagem vertical e horizontal. Requer o arquivo `vendors/easings.min.js` ou [jQuery UI](https://jqueryui.com/) para usar algumas de [suas transições](https://api.jqueryui.com/easings/) . Outras bibliotecas podem ser usadas em vez disso. -- `easingcss3`: (padrão `ease`) Define o efeito de transição a ser usado no caso de usar `css3:true`. Você pode usar os [predefinidos](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (como `linear`, `ease-out`...) ou criar seu próprios usando a função `cubic-bezier`. Você pode querer usar [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) para isso. +### easingcss3: +(padrão `ease`) Define o efeito de transição a ser usado no caso de usar `css3:true`. Você pode usar os [predefinidos](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (como `linear`, `ease-out`...) ou criar seu próprios usando a função `cubic-bezier`. Você pode querer usar [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) para isso. -- `loopTop`: (padrão `false`) Define se a rolagem para cima na primeira seção deve rolar para a última ou não. +### loopTop: +(padrão `false`) Define se a rolagem para cima na primeira seção deve rolar para a última ou não. -- `loopBottom`: (padrão `false`) Define se a rolagem para baixo na última seção deve rolar para a primeira ou não. +### loopBottom: +(padrão `false`) Define se a rolagem para baixo na última seção deve rolar para a primeira ou não. -- `loopHorizontal`: (padrão `true`) Define se os controles deslizantes horizontais farão um loop após alcançar o último slide ou o anterior ou não. +### loopHorizontal`: + (padrão `true`) Define se os controles deslizantes horizontais farão um loop após alcançar o último slide ou o anterior ou não. -- `css3`: (padrão `true`). Define se as transformações JavaScript ou CSS3 devem ser usadas para rolar nas seções e slides. Útil para acelerar o movimento em tablets e dispositivos móveis com navegadores que suportem CSS3. Se esta opção estiver definida como `true` e o navegador não suportar CSS3, um substituto será usado. +### css3`: + (padrão `true`). Define se as transformações JavaScript ou CSS3 devem ser usadas para rolar nas seções e slides. Útil para acelerar o movimento em tablets e dispositivos móveis com navegadores que suportem CSS3. Se esta opção estiver definida como `true` e o navegador não suportar CSS3, um substituto será usado. -- `autoScrolling`: (padrão `true`) Define se deve ser usada a rolagem "automática" ou a "normal". Também afeta a maneira como as seções se encaixam na janela do navegador/dispositivo em tablets e telefones celulares. +### autoScrolling: +(padrão `true`) Define se deve ser usada a rolagem "automática" ou a "normal". Também afeta a maneira como as seções se encaixam na janela do navegador/dispositivo em tablets e telefones celulares. -- `fitToSection`: (padrão `true`) Determina se as seções devem ou não ser ajustadas à viewport. Quando definido como `true`, a seção ativa atual sempre preencherá toda a janela de visualização. Caso contrário, o usuário estará livre para parar no meio de uma seção. +### fitToSection: +(padrão `true`) Determina se as seções devem ou não ser ajustadas à viewport. Quando definido como `true`, a seção ativa atual sempre preencherá toda a janela de visualização. Caso contrário, o usuário estará livre para parar no meio de uma seção. -- `fitToSectionDelay`: (default 1000). If `fitToSection` is set to true, this delays +### fitToSectionDelay: +(default 1000). If `fitToSection` is set to true, this delays the fitting by the configured milliseconds. -- `scrollBar`: (padrão `false`) Determina se a barra de rolagem deve ser usada para as **seções verticais** no site ou não. No caso de usar a barra de rolagem, a funcionalidade `autoScrolling` ainda funcionará conforme o esperado. O usuário também estará livre para rolar o site com a barra de rolagem e fullPage.js caberá na seção na tela quando a rolagem terminar. +### scrollBar: +(padrão `false`) Determina se a barra de rolagem deve ser usada para as **seções verticais** no site ou não. No caso de usar a barra de rolagem, a funcionalidade `autoScrolling` ainda funcionará conforme o esperado. O usuário também estará livre para rolar o site com a barra de rolagem e fullPage.js caberá na seção na tela quando a rolagem terminar. -- `paddingTop`: (padrão `0`) Define o preenchimento superior para cada seção com um valor numérico e sua medida (paddingTop: '10px', paddingTop: '10em'...) Útil no caso de usar um cabeçalho fixo. +### paddingTop: +(padrão `0`) Define o preenchimento superior para cada seção com um valor numérico e sua medida (paddingTop: '10px', paddingTop: '10em'...) Útil no caso de usar um cabeçalho fixo. -- `paddingBottom`: (padrão `0`) Define o preenchimento inferior de cada seção com um valor numérico e sua medida (paddingBottom: '10px', paddingBottom: '10em'...). Útil no caso de usar um rodapé fixo. +### paddingBottom: +(padrão `0`) Define o preenchimento inferior de cada seção com um valor numérico e sua medida (paddingBottom: '10px', paddingBottom: '10em'...). Útil no caso de usar um rodapé fixo. -- `fixedElements`: (padrão `null`) Define quais elementos serão retirados da estrutura de rolagem do plugin que é necessário ao usar a opção `css3` para mantê-los fixos. Requer uma string com os seletores Javascript para esses elementos. (Por exemplo: `fixedElements: '#element1, .element2'`) +### fixedElements: +(padrão `null`) Define quais elementos serão retirados da estrutura de rolagem do plugin que é necessário ao usar a opção `css3` para mantê-los fixos. Requer uma string com os seletores Javascript para esses elementos. (Por exemplo: `fixedElements: '#element1, .element2'`) -- `normalScrollElements`: (padrão `null`) [Demonstração](https://codepen.io/alvarotrigo/pen/RmVazM) Se você quiser evitar a rolagem automática ao rolar sobre alguns elementos, esta é a opção que você precisa usar. (útil para mapas, divs de rolagem etc.) Requer uma string com os seletores Javascript para esses elementos. (Por exemplo: `normalScrollElements: '#element1, .element2'`). Esta opção não deve ser aplicada a nenhum elemento de seção/slide. +### normalScrollElements: +(padrão `null`) [Demonstração](https://codepen.io/alvarotrigo/pen/RmVazM) Se você quiser evitar a rolagem automática ao rolar sobre alguns elementos, esta é a opção que você precisa usar. (útil para mapas, divs de rolagem etc.) Requer uma string com os seletores Javascript para esses elementos. (Por exemplo: `normalScrollElements: '#element1, .element2'`). Esta opção não deve ser aplicada a nenhum elemento de seção/slide. -- `bigSectionsDestination`: (padrão `null`) [Demonstração](https://codepen.io/alvarotrigo/pen/vYLdMrx) Define como rolar para uma seção cuja altura é maior que a viewport e quando não estiver usando `scrollOverflow: verdadeiro`. (Leia [como criar seções menores ou maiores](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#criando-seções-maiores-ou-menores)). Por padrão, fullPage.js rola para o topo se você vier de uma seção acima do destino e para baixo se você vier de uma seção abaixo do destino. Os valores possíveis são `top`, `bottom`, `null`. +### bigSectionsDestination: +(padrão `null`) [Demonstração](https://codepen.io/alvarotrigo/pen/vYLdMrx) Define como rolar para uma seção cuja altura é maior que a viewport e quando não estiver usando `scrollOverflow: verdadeiro`. (Leia [como criar seções menores ou maiores](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#criando-seções-maiores-ou-menores)). Por padrão, fullPage.js rola para o topo se você vier de uma seção acima do destino e para baixo se você vier de uma seção abaixo do destino. Os valores possíveis são `top`, `bottom`, `null`. -- `keyboardScrolling`: (padrão `true`) Define se o conteúdo pode ser navegado usando o teclado. +### keyboardScrolling: +(padrão `true`) Define se o conteúdo pode ser navegado usando o teclado. -- `touchSensitivity`: (padrão `5`) Define uma porcentagem da largura/altura da janela do navegador e a distância que um deslize deve medir para navegar para a próxima seção/slide +### touchSensitivity: +(padrão `5`) Define uma porcentagem da largura/altura da janela do navegador e a distância que um deslize deve medir para navegar para a próxima seção/slide -- `continuousVertical`: (padrão `false`) Define se a rolagem para baixo na última seção deve rolar para a primeira e se a rolagem para cima na primeira seção deve rolar para a última. Não compatível com `loopTop`, `loopBottom` ou qualquer barra de rolagem presente no site (`scrollBar:true` ou `autoScrolling:false`). +### continuousVertical: +(padrão `false`) Define se a rolagem para baixo na última seção deve rolar para a primeira e se a rolagem para cima na primeira seção deve rolar para a última. Não compatível com `loopTop`, `loopBottom` ou qualquer barra de rolagem presente no site (`scrollBar:true` ou `autoScrolling:false`). -- `continuousHorizontal`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deslizar para a direita no último slide deve deslizar para a direita para o primeiro ou não, e se rolar para a esquerda no primeiro slide deve deslizar para a esquerda para o último ou não. Não compatível com `loopHorizontal`. Requer fullpage.js >= 3.0.1. +### continuousHorizontal: +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deslizar para a direita no último slide deve deslizar para a direita para o primeiro ou não, e se rolar para a esquerda no primeiro slide deve deslizar para a esquerda para o último ou não. Não compatível com `loopHorizontal`. Requer fullpage.js >= 3.0.1. -- `scrollHorizontally`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se desliza horizontalmente nos controles deslizantes usando a roda do mouse ou o trackpad. Ele só pode ser usado ao usar: `autoScrolling:true`. Ideal para contar histórias. Requer fullpage.js >= 3.0.1. +### scrollHorizontally: +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se desliza horizontalmente nos controles deslizantes usando a roda do mouse ou o trackpad. Ele só pode ser usado ao usar: `autoScrolling:true`. Ideal para contar histórias. Requer fullpage.js >= 3.0.1. -- `interlockedSlides`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Determina se mover um controle deslizante horizontal forçará o deslizamento dos controles deslizantes em outra seção na mesma direção. Os valores possíveis são `true`, `false` ou uma matriz com as seções interligadas. Por exemplo, `[1,3,5]` começando por 1. Requer fullpage.js >= 3.0.1. +### interlockedSlides: +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Determina se mover um controle deslizante horizontal forçará o deslizamento dos controles deslizantes em outra seção na mesma direção. Os valores possíveis são `true`, `false` ou uma matriz com as seções interligadas. Por exemplo, `[1,3,5]` começando por 1. Requer fullpage.js >= 3.0.1. -- `dragAndMove`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Ativa ou desativa o arrastar e deslizar de seções e slides usando o mouse ou os dedos. Requer fullpage.js >= 3.0.1. Os valores possíveis são: +### dragAndMove: +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Ativa ou desativa o arrastar e deslizar de seções e slides usando o mouse ou os dedos. Requer fullpage.js >= 3.0.1. Os valores possíveis são: - `true`: habilita o recurso. - `false`: desativa o recurso. - `vertical`: habilita o recurso apenas verticalmente. @@ -468,21 +498,27 @@ the fitting by the configured milliseconds. - `fingersonly`: habilita o recurso apenas para dispositivos de toque. - `mouseonly`: habilita o recurso apenas para dispositivos desktop (mouse e trackpad). -- `offsetSections`: (padrão `false`)[Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Fornece uma maneira de usar seções que não sejam de tela cheia com base na porcentagem. Ideal para mostrar aos visitantes que há mais conteúdo no site, mostrando parte da seção seguinte ou anterior. Requer fullPage.js >= 3.0.1. +### offsetSections +(padrão `false`)[Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Fornece uma maneira de usar seções que não sejam de tela cheia com base na porcentagem. Ideal para mostrar aos visitantes que há mais conteúdo no site, mostrando parte da seção seguinte ou anterior. Requer fullPage.js >= 3.0.1. Para definir a porcentagem de cada seção deve-se usar o atributo `data-percentage`. A centralização da seção na janela de visualização pode ser determinada usando um valor booleano no atributo `data-centered` (o padrão é `true` se não for especificado). Por exemplo: ``` html
          ``` -- `resetSliders`: (padrão `false`). [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não redefinir cada controle deslizante após sair de sua seção. Requer fullpage.js >= 3.0.1. +### resetSliders +(padrão `false`). [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não redefinir cada controle deslizante após sair de sua seção. Requer fullpage.js >= 3.0.1. -- `fadingEffect`: (padrão `false`). [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve usar um efeito de desvanecimento ou não em vez do efeito de rolagem padrão. Os valores possíveis são `true`, `false`, `sections`, `slides`. Portanto, pode ser aplicado apenas verticalmente ou horizontalmente, ou em ambos ao mesmo tempo. Ele só pode ser usado ao usar: `autoScrolling:true`. Requer fullpage.js >= 3.0.1. +### fadingEffect +(padrão `false`). [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve usar um efeito de desvanecimento ou não em vez do efeito de rolagem padrão. Os valores possíveis são `true`, `false`, `sections`, `slides`. Portanto, pode ser aplicado apenas verticalmente ou horizontalmente, ou em ambos ao mesmo tempo. Ele só pode ser usado ao usar: `autoScrolling:true`. Requer fullpage.js >= 3.0.1. -- `animateAnchor`: (padrão `true`) Define se o carregamento do site quando dado uma âncora (#) rolará com a animação até seu destino ou será carregado diretamente na seção dada. +### animateAnchor +(padrão `true`) Define se o carregamento do site quando dado uma âncora (#) rolará com a animação até seu destino ou será carregado diretamente na seção dada. -- `recordHistory`: (padrão `true`) Define se o estado do site deve ser enviado para o histórico do navegador. Quando definido como "true", cada seção/slide do site funcionará como uma nova página e os botões voltar e avançar do navegador rolarão as seções/slides para alcançar o estado anterior ou seguinte do site. Quando definido como `false`, o URL continuará mudando, mas não terá efeito no histórico do navegador. Esta opção é desativada automaticamente ao usar `autoScrolling:false`. +### recordHistory +(padrão `true`) Define se o estado do site deve ser enviado para o histórico do navegador. Quando definido como "true", cada seção/slide do site funcionará como uma nova página e os botões voltar e avançar do navegador rolarão as seções/slides para alcançar o estado anterior ou seguinte do site. Quando definido como `false`, o URL continuará mudando, mas não terá efeito no histórico do navegador. Esta opção é desativada automaticamente ao usar `autoScrolling:false`. -- `menu`: (padrão `false`) Um seletor pode ser usado para especificar o menu a ser vinculado às seções. Desta forma, a rolagem das seções ativará o elemento correspondente no menu usando a classe `active`. +### menu +(padrão `false`) Um seletor pode ser usado para especificar o menu a ser vinculado às seções. Desta forma, a rolagem das seções ativará o elemento correspondente no menu usando a classe `active`. Isso não gerará um menu, mas apenas adicionará a classe `active` ao elemento no menu fornecido com os links âncora correspondentes. Para vincular os elementos do menu com as seções, será necessária uma tag de dados HTML 5 (`data-menuanchor`) para usar com os mesmos links âncora usados nas seções. Exemplo: @@ -503,55 +539,85 @@ new fullpage('#fullpage', { **Observação:** o elemento de menu deve ser colocado fora do wrapper de página inteira para evitar problemas ao usar `css3:true`. Caso contrário, ele será anexado ao `body` pelo próprio plugin. -- `navigation`: (padrão `false`) Se definido como `true`, mostrará uma barra de navegação composta por pequenos círculos. +### navigation +(padrão `false`) Se definido como `true`, mostrará uma barra de navegação composta por pequenos círculos. -- `navigationPosition`: (padrão `none`) Pode ser definido como `left` ou `right` e define em qual posição a barra de navegação será mostrada (se estiver usando uma). +### navigationPosition +(padrão `none`) Pode ser definido como `left` ou `right` e define em qual posição a barra de navegação será mostrada (se estiver usando uma). -- `navigationTooltips`: (padrão []) Define as dicas de ferramentas a serem exibidas para os círculos de navegação caso estejam sendo usadas. Exemplo: `navigationTooltips: ['firstSlide', 'secondSlide']`. Você também pode defini-los usando o atributo `data-tooltip` em cada seção, se preferir. +### navigationTooltips +(padrão []) Define as dicas de ferramentas a serem exibidas para os círculos de navegação caso estejam sendo usadas. Exemplo: `navigationTooltips: ['firstSlide', 'secondSlide']`. Você também pode defini-los usando o atributo `data-tooltip` em cada seção, se preferir. -- `showActiveTooltip`: (padrão `false`) Mostra uma dica de ferramenta persistente para a seção visualizada ativamente na navegação vertical. +### showActiveTooltip +(padrão `false`) Mostra uma dica de ferramenta persistente para a seção visualizada ativamente na navegação vertical. -- `slidesNavigation`: (padrão `false`) Se definido como `true`, mostrará uma barra de navegação composta de pequenos círculos para cada controle deslizante de paisagem no site. +### slidesNavigation +(padrão `false`) Se definido como `true`, mostrará uma barra de navegação composta de pequenos círculos para cada controle deslizante de paisagem no site. -- `slidesNavPosition`: (padrão `bottom`) Define a posição da barra de navegação de paisagem para controles deslizantes. Admite `top` e `bottom` como valores. Você pode querer modificar os estilos CSS para determinar a distância da parte superior ou inferior, bem como qualquer outro estilo, como cor. +### slidesNavPosition +(padrão `bottom`) Define a posição da barra de navegação de paisagem para controles deslizantes. Admite `top` e `bottom` como valores. Você pode querer modificar os estilos CSS para determinar a distância da parte superior ou inferior, bem como qualquer outro estilo, como cor. -- `scrollOverflow`: (padrão `true`) define se deve ou não criar um scroll para a seção/slide caso seu conteúdo seja maior que a altura do mesmo. It requires the default value `scrollBar: false`. Para evitar que fullpage.js crie a barra de rolagem em certas seções ou slides, use a classe `fp-noscroll`. Por exemplo: `
          ` Você também pode impedir que o scrolloverflow seja aplicado no modo responsivo ao usar `fp-auto-height-responsive` no elemento section. +### scrollOverflow +(padrão `true`) define se deve ou não criar um scroll para a seção/slide caso seu conteúdo seja maior que a altura do mesmo. It requires the default value `scrollBar: false`. Para evitar que fullpage.js crie a barra de rolagem em certas seções ou slides, use a classe `fp-noscroll`. Por exemplo: `
          ` Você também pode impedir que o scrolloverflow seja aplicado no modo responsivo ao usar `fp-auto-height-responsive` no elemento section. -- `scrollOverflowReset`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Os valores possíveis são `true`, `false`, `sections`, `slides`. Quando definido como `true`, ele rola o conteúdo da seção/slide com uma barra de rolagem ao sair para outra seção/slide. Dessa forma, a seção/slide sempre mostrará o início de seu conteúdo, mesmo ao rolar de uma seção abaixo dela. Adicionar a classe `fp-no-scrollOverflowReset` na seção ou slide desativará esse recurso para esse painel específico. +### scrollOverflowReset +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Os valores possíveis são `true`, `false`, `sections`, `slides`. Quando definido como `true`, ele rola o conteúdo da seção/slide com uma barra de rolagem ao sair para outra seção/slide. Dessa forma, a seção/slide sempre mostrará o início de seu conteúdo, mesmo ao rolar de uma seção abaixo dela. Adicionar a classe `fp-no-scrollOverflowReset` na seção ou slide desativará esse recurso para esse painel específico. -- `scrollOverflowMacStyle`: (padrão `false`). Quando ativa, esta opção usará um "estilo mac" para a barra de rolagem em vez do padrão, que será bem diferente em computadores Windows. +### scrollOverflowMacStyle +(padrão `false`). Quando ativa, esta opção usará um "estilo mac" para a barra de rolagem em vez do padrão, que será bem diferente em computadores Windows. -- `sectionSelector`: (padrão `.section`) Define o seletor Javascript usado para as seções do plugin. Ele pode precisar ser alterado algumas vezes para evitar problemas com outros plugins usando os mesmos seletores que fullpage.js. +### sectionSelector +(padrão `.section`) Define o seletor Javascript usado para as seções do plugin. Ele pode precisar ser alterado algumas vezes para evitar problemas com outros plugins usando os mesmos seletores que fullpage.js. -- `slideSelector`: (padrão `.slide`) Define o seletor Javascript usado para os slides do plugin. Ele pode precisar ser alterado algumas vezes para evitar problemas com outros plugins usando os mesmos seletores que fullpage.js. +### slideSelector +(padrão `.slide`) Define o seletor Javascript usado para os slides do plugin. Ele pode precisar ser alterado algumas vezes para evitar problemas com outros plugins usando os mesmos seletores que fullpage.js. -- `responsiveWidth`: (padrão `0`) Uma rolagem normal (`autoScrolling:false`) será usada sob a largura definida em pixels. Uma classe `fp-responsive` é adicionada à tag body caso o usuário queira usá-la para seu próprio CSS responsivo. Por exemplo, se definido como 900, sempre que a largura do navegador for menor que 900, o plug-in rolará como um site normal. +### responsiveWidth +(padrão `0`) Uma rolagem normal (`autoScrolling:false`) será usada sob a largura definida em pixels. Uma classe `fp-responsive` é adicionada à tag body caso o usuário queira usá-la para seu próprio CSS responsivo. Por exemplo, se definido como 900, sempre que a largura do navegador for menor que 900, o plug-in rolará como um site normal. -- `responsiveHeight`: (padrão `0`) Um scroll normal (`autoScrolling:false`) será usado sob a altura definida em pixels. Uma classe `fp-responsive` é adicionada à tag body caso o usuário queira usá-la para seu próprio CSS responsivo. Por exemplo, se definido como 900, sempre que a altura do navegador for menor que 900, o plug-in rolará como um site normal. +### responsiveHeight +(padrão `0`) Um scroll normal (`autoScrolling:false`) será usado sob a altura definida em pixels. Uma classe `fp-responsive` é adicionada à tag body caso o usuário queira usá-la para seu próprio CSS responsivo. Por exemplo, se definido como 900, sempre que a altura do navegador for menor que 900, o plug-in rolará como um site normal. -- `responsiveSlides`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Quando definido como "true", os slides serão transformados em seções verticais quando o modo responsivo for acionado. (usando as opções `responsiveWidth` ou `responsiveHeight` detalhadas acima). Requer fullpage.js >= 3.0.1. +### responsiveSlides +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Quando definido como "true", os slides serão transformados em seções verticais quando o modo responsivo for acionado. (usando as opções `responsiveWidth` ou `responsiveHeight` detalhadas acima). Requer fullpage.js >= 3.0.1. -- `parallax`: (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar os efeitos de fundo de paralaxe em seções/slides. [Leia mais sobre como aplicar a opção de paralaxe](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). +### parallax +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar os efeitos de fundo de paralaxe em seções/slides. [Leia mais sobre como aplicar a opção de paralaxe](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). -- `parallaxOptions`: (padrão: `{ tipo: 'reveal', porcentagem: 62, propriedade: 'translate'}`). Permite configurar os parâmetros para o efeito de fundo de paralaxe ao usar a opção `parallax:true`. [Leia mais sobre como aplicar a opção de paralaxe](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). +### parallaxOptions +(padrão: `{ type: 'reveal', percentage: 62, property: 'translate'}`). +Permite configurar os parâmetros para o efeito de fundo de paralaxe ao usar a opção `parallax:true`. [Leia mais sobre como aplicar a opção de paralaxe](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). -- `dropEffect` (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar o efeito de soltar nas seções/slides. [Leia mais sobre como aplicar a opção de efeito de soltar](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar o efeito de soltar nas seções/slides. [Leia mais sobre como aplicar a opção de efeito de soltar](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (padrão: `{ velocidade: 2300, cor: '#F82F4D', zIndex: 9999}`). Permite configurar os parâmetros para o efeito de soltar ao usar a opção `dropEffect:true`.[Leia mais sobre como aplicar a opção de efeito de soltar](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(padrão: `{ speed: 2300, color: '#F82F4D', zindex: 9999}`). +Permite configurar os parâmetros para o efeito de soltar ao usar a opção `dropEffect:true`.[Leia mais sobre como aplicar a opção de efeito de soltar](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar o efeito água nas seções/slides. [Leia mais sobre como aplicar a opção de efeito de água](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(padrão `false`) [Extensão de fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Define se deve ou não usar o efeito água nas seções/slides. [Leia mais sobre como aplicar a opção de efeito de água](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (padrão: `{ animateContent: true, animateOnMouseMove: true}`). Permite configurar os parâmetros para o efeito água ao usar a opção `waterEffect:true`.[Leia mais sobre como aplicar a opção efeito água](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(padrão: `{ animateContent: true, animateOnMouseMove: true}`). +Permite configurar os parâmetros para o efeito água ao usar a opção `waterEffect:true`.[Leia mais sobre como aplicar a opção efeito água](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards`: (default `false`) [Extensões do fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(default `false`) [Extensões do fullpage.js](https://alvarotrigo.com/fullPage/extensions/br/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). +Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading`: (padrão `true`) O carregamento lento está ativo por padrão, o que significa que carregará lentamente qualquer elemento de mídia contendo o atributo `data-src` conforme detalhado nos [documentos de carregamento lento](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#lazy-loading). Se você quiser usar qualquer outra biblioteca de carregamento lento, você pode desativar esse recurso fullpage.js. +### lazyLoading +(padrão `true`) O carregamento lento está ativo por padrão, o que significa que carregará lentamente qualquer elemento de mídia contendo o atributo `data-src` conforme detalhado nos [documentos de carregamento lento](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/brazilian-portuguese/#lazy-loading). Se você quiser usar qualquer outra biblioteca de carregamento lento, você pode desativar esse recurso fullpage.js. -- `observer`: (padrão `true`) Define se deve ou não observar mudanças na estrutura HTML da página. Quando ativado, fullPage.js reagirá automaticamente a essas alterações e se atualizará de acordo. Ideal ao adicionar, remover ou ocultar seções ou slides. +### observer +(padrão `true`) Define se deve ou não observar mudanças na estrutura HTML da página. Quando ativado, fullPage.js reagirá automaticamente a essas alterações e se atualizará de acordo. Ideal ao adicionar, remover ou ocultar seções ou slides. -- `créditos`. (padrão `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Define se os créditos fullPage.js devem ser usados. De acordo com as cláusulas 0, 4, 5 e 7 da licença GPLv3, aqueles que usam fullPage.js sob a GPLv3 são obrigados a fornecer um aviso proeminente de que fullPage.js está em uso. Recomendamos incluir a atribuição mantendo essa opção ativada. +### créditos +(padrão `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Define se os créditos fullPage.js devem ser usados. De acordo com as cláusulas 0, 4, 5 e 7 da licença GPLv3, aqueles que usam fullPage.js sob a GPLv3 são obrigados a fornecer um aviso proeminente de que fullPage.js está em uso. Recomendamos incluir a atribuição mantendo essa opção ativada. ## Métodos Você pode vê-los em ação [aqui](https://alvarotrigo.com/fullPage/examples/methods.html) @@ -1065,13 +1131,10 @@ Quer buildar arquivos de distribuição do fullpage.js? Consulte [Tarefas de Bui ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it diff --git a/lang/chinese/README.md b/lang/chinese/README.md index ae3202100..cdfa693d3 100644 --- a/lang/chinese/README.md +++ b/lang/chinese/README.md @@ -17,7 +17,7 @@ --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22,2-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23,2-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal Donate](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -383,79 +383,109 @@ fullpage.js [提供了一组扩展](https://alvarotrigo.com/fullPage/extensions/ ## 参数 --`licenseKey`:(默认 `null` )。 **此选项是强制性的。**如果您在非开源项目中使用 fullPage ,则应使用购买fullPage 商业许可证时提供的许可证密钥。 如果您的项目是开放的,请[与我 [联系](https://alvarotrigo.com/fullPage/extensions/requestKey.html) 并提供指向您的存储库的链接以获取许可证密钥。 请阅读更多关于许可 [这里](https://github.com/alvarotrigo/fullPage.js#license) 和 [在网页上](https://alvarotrigo.com/fullPage/pricing/) 。例如: +### licenseKey +( 默认 `null` )。 **此选项是强制性的。**如果您在非开源项目中使用 fullPage ,则应使用购买fullPage 商业许可证时提供的许可证密钥。 如果您的项目是开放的,请[与我 [联系](https://alvarotrigo.com/fullPage/extensions/requestKey.html) 并提供指向您的存储库的链接以获取许可证密钥。 请阅读更多关于许可 [这里](https://github.com/alvarotrigo/fullPage.js#license) 和 [在网页上](https://alvarotrigo.com/fullPage/pricing/) 。例如: - ```javascript - new fullpage('#fullpage', { - licenseKey: 'YOUR_KEY_HERE' - }); - ``` +```javascript +new fullpage('#fullpage', { + licenseKey: 'YOUR_KEY_HERE' +}); +``` -- `controlArrows`:(默认为 `true`)确定是否将 slide 的控制箭头向右或向左移动。 +### controlArrows +(默认为 `true`)确定是否将 slide 的控制箭头向右或向左移动。 -- `controlArrowsHTML`: (default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) +### controlArrowsHTML +(默认为 `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) -- `verticalCentered`:(默认为`true`)在 section 内部垂直居中。(Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered +(默认为`true`)在 section 内部垂直居中。(Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed`:(默认 `700` )滚动转换的速度(以毫秒为单位)。 +### scrollingSpeed +(默认 `700` )滚动转换的速度(以毫秒为单位)。 -- `sectionsColor`:(默认 `none` )为每个 section 定义 CSS `background-color ` 属性。 +### sectionsColor +(默认 `none` )为每个 section 定义 CSS `background-color ` 属性。 例: - ```javascript - new fullpage('#fullpage', { - sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], - }); - ``` +```javascript +new fullpage('#fullpage', { + sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], +}); +``` -- `anchors`:(默认`[]`)定义要在每个 section 的 URL 上显示的锚链接(#example)。 锚点的值应该是独一无二的。 数组中的锚的位置将限定锚被应用于哪些部分。 (第二 section 的第二个位置等等)。 通过浏览器也可以使用锚点向前和向后导航。 该选项还允许用户为特定的 section 或 slide 添加书签。 **注意!**锚点不能与站点上的任何 ID 元素(或 IE 的 NAME 元素)具有相同的值。 +### anchors +(默认`[]`)定义要在每个 section 的 URL 上显示的锚链接(#example)。 锚点的值应该是独一无二的。 数组中的锚的位置将限定锚被应用于哪些部分。 (第二 section 的第二个位置等等)。 通过浏览器也可以使用锚点向前和向后导航。 该选项还允许用户为特定的 section 或 slide 添加书签。 **注意!**锚点不能与站点上的任何 ID 元素(或 IE 的 NAME 元素)具有相同的值。 现在可以通过使用属性 `data-anchor` 直接在 HTML 结构中定义锚点,如此处所述。 -- `lockAnchors`:(默认为 `false` )确定 URL 中的锚是否在库中完全有效。 您仍然可以在函数和回调内部使用锚,但是它们在滚动网站时不起任何作用。 如果你想在 URL 中使用锚点来将 fullPage.js 和其他插件结合起来,那就很有用。 +### lockAnchors +(默认为 `false` )确定 URL 中的锚是否在库中完全有效。 您仍然可以在函数和回调内部使用锚,但是它们在滚动网站时不起任何作用。 如果你想在 URL 中使用锚点来将 fullPage.js 和其他插件结合起来,那就很有用。 -- `easing` : (默认 `easeInOutCubic` )定义用于垂直和水平滚动的过渡效果。 +### easing` +(默认 `easeInOutCubic` )定义用于垂直和水平滚动的过渡效果。 它需要文件 `vendors/easings.min.js` 或 [jQuery UI](https://jqueryui.com/) 来使用 [它的转换](https://api.jqueryui.com/easings/) 。 其他库可以用来代替。 -- `easingcss3` : (默认 `ease` )定义在使用 `css3:true` 的情况下使用的过渡效果。 你可以使用 [预定义的](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp)(比如 `linear`,`ease-out` ...)或者使用 `贝塞尔曲线` 功能创建你自己的效果。 你可能想使用 [Matthew Lein CSS缓动动画工具](https://matthewlein.com/ceaser/) 。 +### easingcss3 +(默认 `ease` )定义在使用 `css3:true` 的情况下使用的过渡效果。 你可以使用 [预定义的](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp)(比如 `linear`,`ease-out` ...)或者使用 `贝塞尔曲线` 功能创建你自己的效果。 你可能想使用 [Matthew Lein CSS缓动动画工具](https://matthewlein.com/ceaser/) 。 -- `loopTop`:(默认为 `false`)定义首尾链接滚动方式(首向上)。 +### loopTop +(默认为 `false`)定义首尾链接滚动方式(首向上)。 -- `loopBottom`: (默认为 `false`)定义首尾链接滚动方式(尾向下)。 +### loopBottom +(默认为 `false`)定义首尾链接滚动方式(尾向下)。 -- `loopHorizontal`:(默认为 `true` )定义水平滑块是否在到达上一张或下一张后循环。 +### loopHorizontal +(默认为 `true` )定义水平滑块是否在到达上一张或下一张后循环。 -- `css3`: (默认 `true` )。 定义 section 或 slide 转换动画使用 JavaScript 还是 CSS3 。 有助于通过支持 CSS3 的浏览器加速平板电脑和移动设备的移动。 如果此选项设置为 `true` ,并且浏览器不支持 CSS3 ,则将使用后者。 +### css3 +(默认 `true` )。 定义 section 或 slide 转换动画使用 JavaScript 还是 CSS3 。 有助于通过支持 CSS3 的浏览器加速平板电脑和移动设备的移动。 如果此选项设置为 `true` ,并且浏览器不支持 CSS3 ,则将使用后者。 -- `autoScrolling`: (默认为 `true` )定义是使用“自动”滚动还是“正常”滚动。 它同时也影响了平板电脑和移动电话中浏览器/设备窗口部分适配的方式。 +### autoScrolling +(默认为 `true` )定义是使用“自动”滚动还是“正常”滚动。 它同时也影响了平板电脑和移动电话中浏览器/设备窗口部分适配的方式。 -- `fitToSection`: (默认为 `true` )确定是否将 section 适应视图。 当设置为 `true` 时,当前激活 section 将始终填充整个视图。 否者,section 可以停留在网页的任何位置。 +### fitToSection +(默认为 `true` )确定是否将 section 适应视图。 当设置为 `true` 时,当前激活 section 将始终填充整个视图。 否者,section 可以停留在网页的任何位置。 -- `fitToSection`: (默认为 `true` )确定是否将 section 适应视图。 当设置为 `true` 时,当前激活 section 将始终填充整个视图。 否者,section 可以停留在网页的任何位置。 +### fitToSection +(默认为 `true` )确定是否将 section 适应视图。 当设置为 `true` 时,当前激活 section 将始终填充整个视图。 否者,section 可以停留在网页的任何位置。 -- `scrollBar`: (默认 `false` )确定是否使用站点的滚动条。 在使用滚动条的情况下,`autoScrolling` 功能仍将按预期工作。 用户也可以使用滚动条自由滚动网站,当滚动完成时,fullPage.js 将适配屏幕上的部分。 +### scrollBar +(默认 `false` )确定是否使用站点的滚动条。 在使用滚动条的情况下,`autoScrolling` 功能仍将按预期工作。 用户也可以使用滚动条自由滚动网站,当滚动完成时,fullPage.js 将适配屏幕上的部分。 -- `paddingTop`: (默认 `0` )用数值和相对长度(paddingTop:'10px',paddingTop:'10em'...)定义每个 section 的内边距( top )。 +### paddingTop +(默认 `0` )用数值和相对长度(paddingTop:'10px',paddingTop:'10em'...)定义每个 section 的内边距( top )。 -- `paddingBottom`: (默认为 `0` )用数值和相对长度(paddingBottom:'10px',paddingBottom:'10em'...)定义每个 section 的内边距( bottom )。 有利于有固定页脚的情况。 +### paddingBottom +(默认为 `0` )用数值和相对长度(paddingBottom:'10px',paddingBottom:'10em'...)定义每个 section 的内边距( bottom )。 有利于有固定页脚的情况。 -- `fixedElements`: (默认 `null` )当使用 `css3` 选项保持固定时,定义哪些元素将从插件的滚动结构中移除。 它需要带有 Javascript 选择器的字符来表示这些元素。 (例如:`fixedElements:'#element1,.element2'`)。 +### fixedElements +(默认 `null` )当使用 `css3` 选项保持固定时,定义哪些元素将从插件的滚动结构中移除。 它需要带有 Javascript 选择器的字符来表示这些元素。 (例如:`fixedElements:'#element1,.element2'`)。 -- `normalScrollElements`: (默认 `null` )[示例](https://codepen.io/alvarotrigo/pen/RmVazM) 如果你想在滚动某些元素时避免自动滚动,这是你需要使用的选项。 (地图,滚动 div 等有用)它需要带有 Javascript 选择器的字符来表示这些元素。(例如:`normalScrollElements:'#element1,.element2'` )。 此选项不应该应用于任何 section/slide 元素本身。 +### normalScrollElements +(默认 `null` )[示例](https://codepen.io/alvarotrigo/pen/RmVazM) 如果你想在滚动某些元素时避免自动滚动,这是你需要使用的选项。 (地图,滚动 div 等有用)它需要带有 Javascript 选择器的字符来表示这些元素。(例如:`normalScrollElements:'#element1,.element2'` )。 此选项不应该应用于任何 section/slide 元素本身。 -- `bigSectionsDestination`: (默认 `null` )[示例](https://codepen.io/alvarotrigo/pen/vYLdMrx) 定义如何滚动到超出视图的 section。 默认情况下,如果此section 在目标视图的顶部,fullPage.js 将滚动到顶部,如果此 section 在目标视图的底部,则会滚动到底部。 可选的值是 `top`,`bottom`,`null`。 +### bigSectionsDestination +(默认 `null` )[示例](https://codepen.io/alvarotrigo/pen/vYLdMrx) 定义如何滚动到超出视图的 section。 默认情况下,如果此section 在目标视图的顶部,fullPage.js 将滚动到顶部,如果此 section 在目标视图的底部,则会滚动到底部。 可选的值是 `top`,`bottom`,`null`。 -- `keyboardScrolling`: (默认为 `true` )定义是否可以使用键盘进行内容滑动。 +### keyboardScrolling +(默认为 `true` )定义是否可以使用键盘进行内容滑动。 -- `touchSensitivity`: (默认 `5`)定义浏览器窗口宽度/高度的百分比,和触发滑动到下一个 section/slide 的距离的灵敏度。 +### touchSensitivity +(默认 `5`)定义浏览器窗口宽度/高度的百分比,和触发滑动到下一个 section/slide 的距离的灵敏度。 -- `continuousVertical`:(默认为 `false`)定义首位链接循环(最后一个 section 向下滚动,滚动到第一个section,或第一个 section 向上滚动时滚动到最后一个 section )。 不兼容 `loopTop` ,`loopBottom` 或站点中存在的任何滚动条(`scrollBar:true` 或 `autoScrolling:false` )。 +### continuousVertical +(默认为 `false`)定义首位链接循环(最后一个 section 向下滚动,滚动到第一个section,或第一个 section 向上滚动时滚动到最后一个 section )。 不兼容 `loopTop` ,`loopBottom` 或站点中存在的任何滚动条(`scrollBar:true` 或 `autoScrolling:false` )。 -- `continuousHorizontal`: (默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义首位链接循环(最后一个 section 向下滚动,滚动到第一个 section ,或第一个 section 向上滚动时滚动到最后一个 section)。 不兼容`loopHorizontal`。 需要 fullpage.js> = 3.0.1。 +### continuousHorizontal +(默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义首位链接循环(最后一个 section 向下滚动,滚动到第一个 section ,或第一个 section 向上滚动时滚动到最后一个 section)。 不兼容`loopHorizontal`。 需要 fullpage.js> = 3.0.1。 -- `scrollHorizontally`:(默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否使用鼠标滚轮或触控板在滑块内水平滑动。 它是在使用: `autoScrolling:true` 的理想状态. 需要 fullpage.js> = 3.0.1。 +### scrollHorizontally +(默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否使用鼠标滚轮或触控板在滑块内水平滑动。 它是在使用: `autoScrolling:true` 的理想状态. 需要 fullpage.js> = 3.0.1。 -- `interlockedSlides`: (默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 确定移动一个水平滑块是否会强制滑块同方向上滑动到其他区域。 可选的值是 `true`,`false` 或带有互锁部分的数组。 例如 `[1,3,5]` 从 1 开始。需要fullpage.js> = 3.0.1。 +### interlockedSlides +(默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 确定移动一个水平滑块是否会强制滑块同方向上滑动到其他区域。 可选的值是 `true`,`false` 或带有互锁部分的数组。 例如 `[1,3,5]` 从 1 开始。需要fullpage.js> = 3.0.1。 -- `dragAndMove`: (默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 启用或禁用鼠标或手指 section 或 slide 的触摸拖拽。 需要 fullpage.js> = 3.0.1。 可选的值是: +### dragAndMove +(默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 启用或禁用鼠标或手指 section 或 slide 的触摸拖拽。 需要 fullpage.js> = 3.0.1。 可选的值是: - `true`: 启用该功能。 - `false`: 禁用该功能。 - `vertical`: 只能在垂直情况下启用该功能。 @@ -463,91 +493,127 @@ fullpage.js [提供了一组扩展](https://alvarotrigo.com/fullPage/extensions/ - `fingersonly`: 仅启用触摸设备的功能。 - `mouseonly`: 仅启用桌面设备的功能(鼠标和触控板)。 -- `offsetSections`: (默认 `false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 提供基于百分比使用非全屏幕 section 的方法。 通过显示下 section 或上 section 的内容,适合向访问者显示网站中的更多内容。 需要 fullPage.js> = 3.0.1 +### offsetSections +(默认 `false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 提供基于百分比使用非全屏幕 section 的方法。 通过显示下 section 或上 section 的内容,适合向访问者显示网站中的更多内容。 需要 fullPage.js> = 3.0.1 要定义每 section 的百分比,必须使用属性 `data-percentage` 。 可以通过在属性 `data-centered` 中使用布尔值来使视图中 section 居中(如果未指定,则默认为 `true` )。 例如: - ``` html -
          - ``` +``` html +
          +``` -- `resetSliders`: (默认 `false` )。 [fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否在离 section 后重置每个滑块。 需要fullpage.js> = 3.0.1。 +### resetSliders +(默认 `false` )。 [fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否在离 section 后重置每个滑块。 需要fullpage.js> = 3.0.1。 -- `fadingEffect`: (默认 `false` )。 [fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否使用淡入淡出效果,而不是默认的滚动效果。 可选的值是 `true`,`false`,`sections`,`slides` 。 它可以应用于垂直或水平方向,或者同时应用于两者。 需要 fullpage.js> = 3.0.1。 +### fadingEffect +(默认 `false` )。 [fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否使用淡入淡出效果,而不是默认的滚动效果。 可选的值是 `true`,`false`,`sections`,`slides` 。 它可以应用于垂直或水平方向,或者同时应用于两者。 需要 fullpage.js> = 3.0.1。 -- `animateAnchor`: (默认`true`)定义锚点(#)将以动画方式滚动或直接加载到目标 section。 +### animateAnchor +(默认`true`)定义锚点(#)将以动画方式滚动或直接加载到目标 section。 -- `recordHistory`: (默认为`true`)定义是否将网站的状态记录到浏览器的历史记录。 设置为 `true` 时,网站的每个 section/slide 片将作为新页面,浏览器的后退和前进按钮将滚动 section/slide 以达到网站的上一个或下一个状态。 当设置为 `false` 时,URL 将保持更改,但不会影响浏览器的历史记录。 使用 `autoScrolling:false` 时,该选项会自动关闭。 +### recordHistory +(默认为`true`)定义是否将网站的状态记录到浏览器的历史记录。 设置为 `true` 时,网站的每个 section/slide 片将作为新页面,浏览器的后退和前进按钮将滚动 section/slide 以达到网站的上一个或下一个状态。 当设置为 `false` 时,URL 将保持更改,但不会影响浏览器的历史记录。 使用 `autoScrolling:false` 时,该选项会自动关闭。 -- `menu`: (默认 `false` )选择器可以用来指定菜单链接到锚。 这样 section 的滚动将使用 active 状态激活菜单中的相应元素。这不会生成菜单,而只是将 active 状态添加到给定菜单中的元素,并带有相应的锚链接。 +### menu +(默认 `false` )选择器可以用来指定菜单链接到锚。 这样 section 的滚动将使用 active 状态激活菜单中的相应元素。这不会生成菜单,而只是将 active 状态添加到给定菜单中的元素,并带有相应的锚链接。 为了将菜单的元素与各个部分相链接,将需要一个HTML 5 数据标签(data-menuanchor)来关联在 section中使用的锚链接。 例: - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu: '#myMenu' - }); - ``` +```html + +``` +```javascript +new fullpage('#fullpage', { + anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], + menu: '#myMenu' +}); +``` - **注意:** 菜单元素应放置在 fullpage 包裹对象外,以避免使用 `css3:true` 时出现问题。 否则它会被插件本身附加到 `body` 。 +**注意:** 菜单元素应放置在 fullpage 包裹对象外,以避免使用 `css3:true` 时出现问题。 否则它会被插件本身附加到 `body` 。 -- `navigation`: (默认 `false` )如果设置为 `true` ,则会显示一个由小圆圈组成的导航栏。 +### navigation +(默认 `false` )如果设置为 `true` ,则会显示一个由小圆圈组成的导航栏。 -- `navigationPosition`: (默认 `none` )可以设置为 `left` 或 `right` ,并定义导航栏显示的位置(如果使用的话)。 +### navigationPosition +(默认 `none` )可以设置为 `left` 或 `right` ,并定义导航栏显示的位置(如果使用的话)。 -- `navigationTooltips`: (默认为[])定义要使用导航圈的提示。 例如:`navigationTooltips:['firstSlide','secondSlide']`。 如果您愿意,也可以在每个部分中使用属性 `data-tooltip` 来定义它们。 +### navigationTooltips +(默认为[])定义要使用导航圈的提示。 例如:`navigationTooltips:['firstSlide','secondSlide']`。 如果您愿意,也可以在每个部分中使用属性 `data-tooltip` 来定义它们。 -- `showActiveTooltip`: (默认为 `false`)在显示垂直导航中主动显提示。 +### showActiveTooltip +(默认为 `false`)在显示垂直导航中主动显提示。 -- `slidesNavigation`: (默认为 `false`)如果设置为 `true` ,则会显示一个导航栏,该导航栏由站点上每个横向滑块的小圆圈组成。 +### slidesNavigation +(默认为 `false`)如果设置为 `true` ,则会显示一个导航栏,该导航栏由站点上每个横向滑块的小圆圈组成。 -- `slidesNavPosition`: (默认`bottom`)定义滑块的横向导航栏的位置。 值为 `top` 和 `bottom` 。 您可能需要修改 CSS 样式以确定从顶部或底部距离以及任何其他样式(如颜色)。 +### slidesNavPosition +(默认`bottom`)定义滑块的横向导航栏的位置。 值为 `top` 和 `bottom` 。 您可能需要修改 CSS 样式以确定从顶部或底部距离以及任何其他样式(如颜色)。 -- `scrollOverflow`: (默认为 `true`)定义在内容大于它的高度的情况下是否为 section/slide 创建滚动。 It requires the default value `scrollBar: false`。 为了防止 fullpage.js 在某些 section 或 slide 中创建滚动条,请使用 `fp-noscroll` 类。 例如: `
          `. 在 section 元素中使用 `fp-auto-height-responsive` 时,您也可以防止 scrolloverflow 应用于响应模式。 +### scrollOverflow +(默认为 `true`)定义在内容大于它的高度的情况下是否为 section/slide 创建滚动。 It requires the default value `scrollBar: false`。 为了防止 fullpage.js 在某些 section 或 slide 中创建滚动条,请使用 `fp-noscroll` 类。 例如: `
          `. 在 section 元素中使用 `fp-auto-height-responsive` 时,您也可以防止 scrolloverflow 应用于响应模式。 -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) +### scrollOverflowMacStyle +(默认 `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) -- `scrollOverflowReset`:(默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 如果设置为 `true` ,当离开另一个垂直 section时,将使用滚动条向上滚动 section/slide 的内容。 这样,即使从 section 的下方滚动,section/slide 也会始终显示其内容的开头。 Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +### scrollOverflowReset +(默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 如果设置为 `true` ,当离开另一个垂直 section时,将使用滚动条向上滚动 section/slide 的内容。 这样,即使从 section 的下方滚动,section/slide 也会始终显示其内容的开头。 Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `sectionSelector`: (默认`.section`)定义用于插件部分的 Javascript 选择器。 有时可能需要更改,以避免与使用与 fullpage.js 相同的选择器的其他插件的问题。 +### sectionSelector +(默认`.section`)定义用于插件部分的 Javascript 选择器。 有时可能需要更改,以避免与使用与 fullpage.js 相同的选择器的其他插件的问题。 -- `slideSelector`: (默认`.slide`)定义用于插件 slide 的 Javascript 选择器。 有时可能需要更改,以避免与使用与 fullpage.js 相同的选择器的其他插件的问题。 +### slideSelector +(默认`.slide`)定义用于插件 slide 的 Javascript 选择器。 有时可能需要更改,以避免与使用与 fullpage.js 相同的选择器的其他插件的问题。 -- `responsiveWidth`: (默认`0`)一个正常的滚动(`autoScrolling:false`)将在定义的宽度下以像素为单位使用。 如果用户希望将自己的响应式 CSS 用于 body 标记,则会将 `fp-responsive` 类别添加到 body 标记中。 例如,如果设置为 900,则每当浏览器的宽度小于 900 时,插件将像正常站点一样滚动。 +### responsiveWidth +(默认`0`)一个正常的滚动(`autoScrolling:false`)将在定义的宽度下以像素为单位使用。 如果用户希望将自己的响应式 CSS 用于 body 标记,则会将 `fp-responsive` 类别添加到 body 标记中。 例如,如果设置为 900,则每当浏览器的宽度小于 900 时,插件将像正常站点一样滚动。 -- `responsiveHeight`: (默认 `0` )一个正常的滚动(`autoScrolling:false`)将在定义的高度下以像素为单位使用。 如果用户希望将自己的响应式 CSS 用于 body 标记,则会将 `fp-responsive` 类添加到 body 标记中。 例如,如果设置为 900 ,则每当浏览器的高度小于 900 时,插件将像正常站点一样滚动。 +### responsiveHeight +(默认 `0` )一个正常的滚动(`autoScrolling:false`)将在定义的高度下以像素为单位使用。 如果用户希望将自己的响应式 CSS 用于 body 标记,则会将 `fp-responsive` 类添加到 body 标记中。 例如,如果设置为 900 ,则每当浏览器的高度小于 900 时,插件将像正常站点一样滚动。 -- `responsiveSlides`: (默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 设置为`true`时,在响应模式被触发时,slide 将变成垂直 section。 (通过使用上面详述的 `responsiveWidth` 或 `responsiveHeight` 选项)。 需要fullpage.js> = 3.0.1。 +### responsiveSlides +(默认`false`)[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 设置为`true`时,在响应模式被触发时,slide 将变成垂直 section。 (通过使用上面详述的 `responsiveWidth` 或 `responsiveHeight` 选项)。 需要fullpage.js> = 3.0.1。 -- `parallax`: (默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否在 section/slide 上使用视差背景效果。 [详细了解如何应用视差选项](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/chinese/parallax-extension.md). +### parallax +(默认 `false` )[fullpage.js 的扩展](https://alvarotrigo.com/fullPage/extensions/)。 定义是否在 section/slide 上使用视差背景效果。 [详细了解如何应用视差选项](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/chinese/parallax-extension.md). -- `parallaxOptions`: (默认:`{type:'reveal',percent:62,property:'translate'}`)。 允许在使用选项 parallax:true 时配置视差背景效果的参数。 [详细了解如何应用视差选项](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/chinese/parallax-extension.md). +### parallaxOptions +(默认:`{type:'reveal',percent:62,property:'translate'}`)。 +允许在使用选项 parallax:true 时配置视差背景效果的参数。 [详细了解如何应用视差选项](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/chinese/parallax-extension.md). -- `dropEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(默认: `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(默认: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). +Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(默认: `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(默认:: `{ animateContent: true, animateOnMouseMove: true}`). +Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/) . 定义是否在 section/slide 上使用卡片效果。[了解有关如何应用卡片选项的更多信息](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(默认: `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/) . 定义是否在 section/slide 上使用卡片效果。[了解有关如何应用卡片选项的更多信息](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). 允许您在使用选项 `cards:true` 时配置卡片效果的参数。 [了解有关如何应用卡片选项的更多信息](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(默认:: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). +允许您在使用选项 `cards:true` 时配置卡片效果的参数。 [了解有关如何应用卡片选项的更多信息](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading`: (默认`true`)懒加载默认是激活的,这意味着它会延迟加载包含属性 `data-src` 的任何媒体元素,详见 [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/chinese/#%E5%BB%B6%E8%BF%9F%E5%8A%A0%E8%BD%BD) 。 如果你想使用任何其他的后加载库,你可以禁用这个 fullpage.js 功能。 +### lazyLoading +(默认`true`)懒加载默认是激活的,这意味着它会延迟加载包含属性 `data-src` 的任何媒体元素,详见 [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/chinese/#%E5%BB%B6%E8%BF%9F%E5%8A%A0%E8%BD%BD) 。 如果你想使用任何其他的后加载库,你可以禁用这个 fullpage.js 功能。 -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) +### observer +(默认: `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) +### credits +(默认: `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) ## 公共方法 你可以在[这里](https://alvarotrigo.com/fullPage/examples/methods.html)看到它们 @@ -1051,13 +1117,10 @@ new fullpage('#fullpage', { ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1080,3 +1143,10 @@ Become a sponsor and get your logo on our README on Github with a link to your s + + +## Contributors + + + + diff --git a/lang/french/README.md b/lang/french/README.md index 4729abed3..f868dcf94 100644 --- a/lang/french/README.md +++ b/lang/french/README.md @@ -18,7 +18,7 @@ --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal Donate](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -392,79 +392,109 @@ Vous pourrez ensuite les utiliser et les configurer comme expliqué dans [option ## Options -- `licenseKey` : (par défaut `null`).**Cette option est facultltative.** Si vous utilisez fullPage dans un projet non open source, vous devez utiliser la clé de licence fournie lors de l'achat de la Licence Commerciale fullPage. Si votre projet est open source, [contactez-moi](https://alvarotrigo.com/#contact) avec un lien vers son répertoire et je vous fournirai une clé de licence. Pour en savoir plus sur les licences [ici] (https://github.com/alvarotrigo/fullPage.js#license) et [sur le site Web] (https://alvarotrigo.com/fullPage/pricing/). Par exemple : +### licenseKey +(défaut `null`).**Cette option est facultltative.** Si vous utilisez fullPage dans un projet non open source, vous devez utiliser la clé de licence fournie lors de l'achat de la Licence Commerciale fullPage. Si votre projet est open source, [contactez-moi](https://alvarotrigo.com/#contact) avec un lien vers son répertoire et je vous fournirai une clé de licence. Pour en savoir plus sur les licences [ici] (https://github.com/alvarotrigo/fullPage.js#license) et [sur le site Web] (https://alvarotrigo.com/fullPage/pricing/). Par exemple : - ```javascript - new fullpage('#fullpage', { - licenceKey:'VOTRE_CLÉ_ICI'. - }); - ``` +```javascript +new fullpage('#fullpage', { + licenceKey:'VOTRE_CLÉ_ICI'. +}); +``` -- `controlArrows` : (par défaut `true`) Détermine s'il faut utiliser les flèches de contrôle pour que les diapositives se déplacent vers la droite ou vers la gauche. +### controlArrows +(défaut `true`) Détermine s'il faut utiliser les flèches de contrôle pour que les diapositives se déplacent vers la droite ou vers la gauche. -- `controlArrowsHTML`: (default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) +### controlArrowsHTML +(default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) -- `verticalCentered` : (par défaut `true`) Centrer verticalement le contenu à l'intérieur des sections. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered +(défaut `true`) Centrer verticalement le contenu à l'intérieur des sections. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed` : (par défaut `700`) Vitesse en millisecondes pour les transitions de défilement. +### scrollingSpeed +(défaut `700`) Vitesse en millisecondes pour les transitions de défilement. -- `sectionsColor` : (default `none`) Définissez la propriété CSS `background-color` pour chaque section. +### sectionsColor +(default `none`) Définissez la propriété CSS `background-color` pour chaque section. Exemple : - ```Javascript - new fullpage('#fullpage', { - sectionsCouleur : ['#f2f2f2f2','#4BBFC3','#7BAABE','whitesmoke','#000'], - }) ; - ``` +```Javascript +new fullpage('#fullpage', { + sectionsCouleur : ['#f2f2f2f2','#4BBFC3','#7BAABE','whitesmoke','#000'], +}) ; +``` -- `anchors` : (default `[]`) Définit les liens d'ancrage (#exemple) à afficher sur l'URL de chaque section. La valeur des ancres doit être unique. La position des ancres dans le tableau définira à quelles sections l'ancre est appliquée. (deuxième position pour la deuxième section et ainsi de suite). L'utilisation des ancres permet également de naviguer vers l'avant et vers l'arrière par le biais du navigateur. Cette option permet également aux utilisateurs de mettre en signet une section ou une diapositive spécifique. **Attention**, les ancres ne peuvent pas avoir la même valeur que n'importe quel élément ID sur le site (ou élément NOM pour IE). Maintenant les ancres peuvent être définies directement dans la structure HTML en utilisant l'attribut `data-anchor` comme expliqué ici. +### anchors +(default `[]`) Définit les liens d'ancrage (#exemple) à afficher sur l'URL de chaque section. La valeur des ancres doit être unique. La position des ancres dans le tableau définira à quelles sections l'ancre est appliquée. (deuxième position pour la deuxième section et ainsi de suite). L'utilisation des ancres permet également de naviguer vers l'avant et vers l'arrière par le biais du navigateur. Cette option permet également aux utilisateurs de mettre en signet une section ou une diapositive spécifique. **Attention**, les ancres ne peuvent pas avoir la même valeur que n'importe quel élément ID sur le site (ou élément NOM pour IE). Maintenant les ancres peuvent être définies directement dans la structure HTML en utilisant l'attribut `data-anchor` comme expliqué ici. -- `lockAnchors` : (default `false`) Détermine si les ancres dans l'URL auront un effet dans la bibliothèque. Vous pouvez toujours utiliser les ancres en interne pour vos propres fonctions et rappels, mais elles n'auront aucun effet sur le défilement du site. Utile si vous voulez combiner fullPage.js avec d'autres plugins en utilisant l'ancre dans l'URL. +### lockAnchors +(default `false`) Détermine si les ancres dans l'URL auront un effet dans la bibliothèque. Vous pouvez toujours utiliser les ancres en interne pour vos propres fonctions et rappels, mais elles n'auront aucun effet sur le défilement du site. Utile si vous voulez combiner fullPage.js avec d'autres plugins en utilisant l'ancre dans l'URL. -- `easing` : (default `easeInOutCubic`) Définit l'effet de transition à utiliser pour le défilement vertical et horizontal. Il nécessite le fichier `vendors/easings.min.js` ou [jQuery UI](https://jqueryui.com/) pour utiliser certaines de[ses transitions](https://api.jqueryui.com/easings/). D'autres bibliothèques pourraient être utilisées à la place. +### easing +(default `easeInOutCubic`) Définit l'effet de transition à utiliser pour le défilement vertical et horizontal. Il nécessite le fichier `vendors/easings.min.js` ou [jQuery UI](https://jqueryui.com/) pour utiliser certaines de[ses transitions](https://api.jqueryui.com/easings/). D'autres bibliothèques pourraient être utilisées à la place. -- `easingcss3` : (default `ease`) Définit l'effet de transition à utiliser en cas d'utilisation de `css3:true`. Vous pouvez utiliser les [prédéfinis](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (tels que `linear`, `ease-out`...) ou créer vos propres en utilisant la fonction `cubic-bezier`. Vous pouvez utiliser [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) pour cela. +### easingcss3 +(default `ease`) Définit l'effet de transition à utiliser en cas d'utilisation de `css3:true`. Vous pouvez utiliser les [prédéfinis](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (tels que `linear`, `ease-out`...) ou créer vos propres en utilisant la fonction `cubic-bezier`. Vous pouvez utiliser [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) pour cela. -- `loopTop` : (défaut `false`) Définit si le défilement vers le haut dans la première section doit défiler jusqu'à la dernière section ou non. +### loopTop +(défaut `false`) Définit si le défilement vers le haut dans la première section doit défiler jusqu'à la dernière section ou non. -- ` loopBottom` : (défaut `false`) Définit si le défilement vers le bas dans la dernière section doit défiler vers la première ou non. +### loopBottom +(défaut `false`) Définit si le défilement vers le bas dans la dernière section doit défiler vers la première ou non. -- `loopHorizontal` : (par défaut `true`) Définit si les curseurs horizontaux boucleront après avoir atteint la dernière diapositive ou la précédente ou non. +### loopHorizontal +(défaut `true`) Définit si les curseurs horizontaux boucleront après avoir atteint la dernière diapositive ou la précédente ou non. -- `css3` : (par défaut `true`). Définit s'il faut utiliser des transformations JavaScript ou CSS3 pour faire défiler les sections et les diapositives. Utile pour accélérer le mouvement dans les tablettes et les appareils mobiles avec les navigateurs supportant CSS3. Si cette option est définie sur `true` et que le navigateur ne supporte pas CSS3, un repli sera utilisé à la place. +### css3 +(défaut `true`). Définit s'il faut utiliser des transformations JavaScript ou CSS3 pour faire défiler les sections et les diapositives. Utile pour accélérer le mouvement dans les tablettes et les appareils mobiles avec les navigateurs supportant CSS3. Si cette option est définie sur `true` et que le navigateur ne supporte pas CSS3, un repli sera utilisé à la place. -- `autoScrolling` : (par défaut `true`) Définit s'il faut utiliser le défilement "automatique" ou "normal". Cela a également une incidence sur la façon dont les sections s'intègrent dans la fenêtre du navigateur/de l'appareil dans les tablettes et les téléphones mobiles. +### autoScrolling +(défaut `true`) Définit s'il faut utiliser le défilement "automatique" ou "normal". Cela a également une incidence sur la façon dont les sections s'intègrent dans la fenêtre du navigateur/de l'appareil dans les tablettes et les téléphones mobiles. -- `fitToSection`: (par défaut `true`) Détermine si des sections doivent ou non être ajustées à la fenêtre d'affichage. Lorsqu'elle est réglée sur `true`, la section active courante remplira toujours toute la fenêtre d'affichage. Sinon, l'utilisateur sera libre de s'arrêter au milieu d'une section. +### fitToSection +(défaut `true`) Détermine si des sections doivent ou non être ajustées à la fenêtre d'affichage. Lorsqu'elle est réglée sur `true`, la section active courante remplira toujours toute la fenêtre d'affichage. Sinon, l'utilisateur sera libre de s'arrêter au milieu d'une section. -- `fitToSectionDelay` : (par défaut 1000). Si `fitToSection` est mis à true, cela retarde l'adaptation par millisecondes configurées. +### fitToSectionDelay +(défaut 1000). Si `fitToSection` est mis à true, cela retarde l'adaptation par millisecondes configurées. -- `scrollBar` : (par défaut `false`) Détermine s'il faut utiliser la barre de défilement pour le site ou non. En cas d'utilisation de la barre de défilement, la fonctionnalité `autoScrolling` fonctionnera toujours comme prévu. L'utilisateur sera également libre de faire défiler le site avec la barre de défilement et fullPage.js s'adaptera à la section à l'écran lorsque le défilement sera terminé. +### scrollBar +(défaut `false`) Détermine s'il faut utiliser la barre de défilement pour le site ou non. En cas d'utilisation de la barre de défilement, la fonctionnalité `autoScrolling` fonctionnera toujours comme prévu. L'utilisateur sera également libre de faire défiler le site avec la barre de défilement et fullPage.js s'adaptera à la section à l'écran lorsque le défilement sera terminé. -- `paddingTop` : (par défaut `0`) Définit le remplissage supérieur de chaque section avec une valeur numérique et sa mesure (paddingTop:'10px', paddingTop:'10em'...) Utile en cas d'utilisation d'un en-tête fixe. +### paddingTop +(défaut `0`) Définit le remplissage supérieur de chaque section avec une valeur numérique et sa mesure (paddingTop:'10px', paddingTop:'10em'...) Utile en cas d'utilisation d'un en-tête fixe. -- `paddingBottom` : (par défaut `0`) Définit le rembourrage inférieur de chaque section avec une valeur numérique et sa mesure (rembourrageBottom:'10px', rembourrageBottom:'10em'...). Utile en cas d'utilisation d'un pied de page fixe. +### paddingBottom +(défaut `0`) Définit le rembourrage inférieur de chaque section avec une valeur numérique et sa mesure (rembourrageBottom:'10px', rembourrageBottom:'10em'...). Utile en cas d'utilisation d'un pied de page fixe. -- `fixedElements` : (default `null`) Définit les éléments qui seront retirés de la structure déroulante du plugin, ce qui est nécessaire lorsque l'option `css3` est utilisée pour les garder fixes. Il faut une chaîne de caractères avec les sélecteurs Javascript pour ces éléments. (Par exemple : `fixedElements:'#element1, .element2'`) +### fixedElements +(default `null`) Définit les éléments qui seront retirés de la structure déroulante du plugin, ce qui est nécessaire lorsque l'option `css3` est utilisée pour les garder fixes. Il faut une chaîne de caractères avec les sélecteurs Javascript pour ces éléments. (Par exemple : `fixedElements:'#element1, .element2'`) -- `normalScrollElements`: (défaut `null`) [Demo](https://codepen.io/alvarotrigo/pen/RmVazM) Si vous voulez éviter le défilement automatique lorsque vous faites défiler certains éléments, c'est l'option que vous devez utiliser. (utile pour les cartes, les scrolling divs, etc.) Il faut une chaîne de caractères avec les sélecteurs Javascript pour ces éléments. (Par exemple : `normalScrollElements:'#element1, .element2'`). Cette option ne doit pas être appliquée à une section ou à un élément de diapositive en soi. +### normalScrollElements +(défaut `null`) [Demo](https://codepen.io/alvarotrigo/pen/RmVazM) Si vous voulez éviter le défilement automatique lorsque vous faites défiler certains éléments, c'est l'option que vous devez utiliser. (utile pour les cartes, les scrolling divs, etc.) Il faut une chaîne de caractères avec les sélecteurs Javascript pour ces éléments. (Par exemple : `normalScrollElements:'#element1, .element2'`). Cette option ne doit pas être appliquée à une section ou à un élément de diapositive en soi. -- `bigSectionsDestination` : (défaut `null`) Définit comment faire défiler jusqu'à une section dont la taille est supérieure à celle de la fenêtre. Par défaut, fullPage.js fait défiler vers le haut si vous venez d'une section située au-dessus de celle de destination et vers le bas si vous venez d'une section située au-dessous de celle de destination. Les valeurs possibles sont `haut`,`bas` et `null`. +### bigSectionsDestination +(défaut `null`) Définit comment faire défiler jusqu'à une section dont la taille est supérieure à celle de la fenêtre. Par défaut, fullPage.js fait défiler vers le haut si vous venez d'une section située au-dessus de celle de destination et vers le bas si vous venez d'une section située au-dessous de celle de destination. Les valeurs possibles sont `haut`,`bas` et `null`. -- `KeyboardScrolling` : (par défaut `true`) Définit si le contenu peut être navigué à l'aide du clavier. +### KeyboardScrolling +(défaut `true`) Définit si le contenu peut être navigué à l'aide du clavier. -- `touchSensitivity` : (par défaut `5`) Définit un pourcentage de la largeur/hauteur de la fenêtre du navigateur, et la distance que doit mesurer un glissement pour naviguer vers la section / diapositive suivante +### touchSensitivity +(défaut `5`) Définit un pourcentage de la largeur/hauteur de la fenêtre du navigateur, et la distance que doit mesurer un glissement pour naviguer vers la section / diapositive suivante -- `continuousVertical` : (par défaut `false`) Définit si le défilement vers le bas dans la dernière section ou doit descendre jusqu'à la première et si le défilement vers le haut dans la première section doit monter jusqu'à la dernière. Non compatible avec `loopTop`, `loopBottom` ou toute barre de défilement présente dans le site (`scrollBar:true` ou `autoScrolling:false`). +### continuousVertical +(défaut `false`) Définit si le défilement vers le bas dans la dernière section ou doit descendre jusqu'à la première et si le défilement vers le haut dans la première section doit monter jusqu'à la dernière. Non compatible avec `loopTop`, `loopBottom` ou toute barre de défilement présente dans le site (`scrollBar:true` ou `autoScrolling:false`). -- `continuousHorizontal` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si le défilement à droite dans la dernière diapositive doit glisser à droite vers la première ou non, et si le défilement à gauche dans la première diapositive doit glisser à gauche vers la dernière ou non. Non compatible avec `loopHorizontal`. Nécessite fullpage.js >= 3.0.1. +### continuousHorizontal +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si le défilement à droite dans la dernière diapositive doit glisser à droite vers la première ou non, et si le défilement à gauche dans la première diapositive doit glisser à gauche vers la dernière ou non. Non compatible avec `loopHorizontal`. Nécessite fullpage.js >= 3.0.1. -- `scrollHorizontally` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si l'on doit glisser horizontalement dans les curseurs en utilisant la molette de la souris ou le pavé tactile. Il ne peut être utilisé que lors de l'utilisation : `autoScrolling:true`. Idéal pour raconter une histoire. Nécessite fullpage.js >= 3.0.1. +### scrollHorizontally +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si l'on doit glisser horizontalement dans les curseurs en utilisant la molette de la souris ou le pavé tactile. Il ne peut être utilisé que lors de l'utilisation : `autoScrolling:true`. Idéal pour raconter une histoire. Nécessite fullpage.js >= 3.0.1. -- `interlockedSlides` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Détermine si le déplacement d'un curseur horizontal va forcer le glissement des curseurs de l'autre section dans la même direction. Les valeurs possibles sont `true`, `false` ou un tableau avec les sections imbriquées. Par exemple, `[1,3,5]` commençant par 1. Nécessite fullpage.js >= 3.0.1. +### interlockedSlides +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Détermine si le déplacement d'un curseur horizontal va forcer le glissement des curseurs de l'autre section dans la même direction. Les valeurs possibles sont `true`, `false` ou un tableau avec les sections imbriquées. Par exemple, `[1,3,5]` commençant par 1. Nécessite fullpage.js >= 3.0.1. -- `dragAndMove` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Active ou désactive le glisser-déposer de sections et de diapositives en utilisant la souris ou les doigts. Nécessite fullpage.js >= 3.0.1. Les valeurs possibles sont : +### dragAndMove +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Active ou désactive le glisser-déposer de sections et de diapositives en utilisant la souris ou les doigts. Nécessite fullpage.js >= 3.0.1. Les valeurs possibles sont : - `true` : active la fonction. - `false` : désactive la fonctionnalité. - `vertical` : active la fonctionnalité uniquement verticalement. @@ -472,93 +502,128 @@ Exemple : - `fingersonly` : active la fonction pour les périphériques tactiles seulement. - `mouseonly` : active la fonctionnalité pour les périphériques de bureau uniquement (souris et trackpad). -- `offsetSections` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Fournit un moyen d'utiliser des sections non plein écran basées sur le pourcentage. Idéal pour montrer aux visiteurs qu'il y a plus de contenu dans le site en affichant une partie de la section suivante ou précédente. Nécessite fullPage.js >= 3.0.1. -Pour définir le pourcentage de chaque section, l'attribut `data-percentage` doit être utilisé. Le centrage de la section dans le viewport peut être déterminé en utilisant une valeur booléenne dans l'attribut `data-centered` (par défaut à `true` si non spécifié). Par exemple : +### offsetSections +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Fournit un moyen d'utiliser des sections non plein écran basées sur le pourcentage. Idéal pour montrer aux visiteurs qu'il y a plus de contenu dans le site en affichant une partie de la section suivante ou précédente. Nécessite fullPage.js >= 3.0.1. +Pour définir le pourcentage de chaque section, l'attribut `data-percentage` doit être utilisé. Le centrage de la section dans le viewport peut être déterminé en utilisant une valeur booléenne dans l'attribut `data-centered` (défaut à `true` si non spécifié). Par exemple : - ``` html -
          - ``` +``` html +
          +``` -- `resetSliders` : (par défaut `false`). Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit s'il faut ou non réinitialiser chaque curseur après avoir quitté sa section. Nécessite fullpage.js >= 3.0.1. +### resetSliders +(défaut `false`). Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit s'il faut ou non réinitialiser chaque curseur après avoir quitté sa section. Nécessite fullpage.js >= 3.0.1. -- `fadingEffect` : (par défaut `false`). [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si un effet de fondu enchaîné doit être utilisé ou non à la place de l'effet de défilement par défaut. Les valeurs possibles sont `true`, `false`, `sections`, `slides`. Il peut donc être appliqué juste verticalement ou horizontalement, ou aux deux à la fois. Il ne peut être utilisé que lors de l'utilisation : `autoScrolling:true`. Nécessite fullpage.js >= 3.0.1. +### fadingEffect +(défaut `false`). [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit si un effet de fondu enchaîné doit être utilisé ou non à la place de l'effet de défilement par défaut. Les valeurs possibles sont `true`, `false`, `sections`, `slides`. Il peut donc être appliqué juste verticalement ou horizontalement, ou aux deux à la fois. Il ne peut être utilisé que lors de l'utilisation : `autoScrolling:true`. Nécessite fullpage.js >= 3.0.1. -- `animateAnchor` : (par défaut `true`) Définit si le chargement du site quand on lui donne une ancre (#) va défiler avec l'animation jusqu'à sa destination ou va se charger directement sur la section donnée. +### animateAnchor +(défaut `true`) Définit si le chargement du site quand on lui donne une ancre (#) va défiler avec l'animation jusqu'à sa destination ou va se charger directement sur la section donnée. -- `recordHistory` : (par défaut `true`) Définit si l'état du site doit être poussé dans l'historique du navigateur. Quand il est défini à `true`, chaque section/glissière du site agira comme une nouvelle page et les boutons avant et arrière du navigateur feront défiler les sections/glissières pour atteindre l'état précédent ou suivant du site. Quand il est réglé sur `false`, l'URL continuera à changer mais n'aura aucun effet sur l'historique du navigateur. Cette option est automatiquement désactivée lors de l'utilisation de `autoScrolling:false`. +### recordHistory +(défaut `true`) Définit si l'état du site doit être poussé dans l'historique du navigateur. Quand il est défini à `true`, chaque section/glissière du site agira comme une nouvelle page et les boutons avant et arrière du navigateur feront défiler les sections/glissières pour atteindre l'état précédent ou suivant du site. Quand il est réglé sur `false`, l'URL continuera à changer mais n'aura aucun effet sur l'historique du navigateur. Cette option est automatiquement désactivée lors de l'utilisation de `autoScrolling:false`. -- `menu` : (par défaut `false`) Un sélecteur peut être utilisé pour spécifier le menu à lier avec les sections. De cette façon, le défilement des sections activera l'élément correspondant dans le menu en utilisant la classe `active`. +### menu +(défaut `false`) Un sélecteur peut être utilisé pour spécifier le menu à lier avec les sections. De cette façon, le défilement des sections activera l'élément correspondant dans le menu en utilisant la classe `active`. Cela ne générera pas de menu mais ajoutera simplement la classe `active` à l'élément du menu donné avec les liens d'ancrage correspondants. Afin de lier les éléments du menu avec les sections, un data-tag HTML 5 (`data-menuanchor`) sera nécessaire à utiliser avec les mêmes liens d'ancrage que ceux utilisés dans les sections. Exemple : - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu : #myMenu - }) ; - ``` +```html + +``` +```javascript +new fullpage('#fullpage', { +anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], +menu : #myMenu +}) ; +``` - **Note:** l'élément de menu doit être placé en dehors du wrapper de la page entière afin d'éviter tout problème lors de l'utilisation de `css3:true`. Sinon, il sera ajouté au `body` par le plugin lui-même. +**Note:** l'élément de menu doit être placé en dehors du wrapper de la page entière afin d'éviter tout problème lors de l'utilisation de `css3:true`. Sinon, il sera ajouté au `body` par le plugin lui-même. -- `navigation` : (par défaut `false`) Si elle est définie à `true`, elle affichera une barre de navigation composée de petits cercles. +### navigation +(défaut `false`) Si elle est définie à `true`, elle affichera une barre de navigation composée de petits cercles. -- `navigationPosition` : (par défaut `none`) Il peut être mis à `left` ou `right` et définit quelle position la barre de navigation sera affichée (si vous en utilisez une). +### navigationPosition +(défaut `none`) Il peut être mis à `left` ou `right` et définit quelle position la barre de navigation sera affichée (si vous en utilisez une). -- `navigationTooltips` : (par défaut []) Définit les info-bulles à afficher pour les cercles de navigation au cas où ils seraient utilisés. Exemple : `navigationTooltips` : 'premierSlide', 'secondSlide']`. Vous pouvez aussi les définir en utilisant l'attribut `data-tooltip` dans chaque section si vous préférez. +### navigationTooltips +(défaut []) Définit les info-bulles à afficher pour les cercles de navigation au cas où ils seraient utilisés. Exemple : `navigationTooltips` : 'premierSlide', 'secondSlide']`. Vous pouvez aussi les définir en utilisant l'attribut `data-tooltip` dans chaque section si vous préférez. -- Voir aussi l'attribut `showActiveTooltip` : (par défaut `false`) Affiche une info-bulle persistante pour la section visualisée activement dans la navigation verticale. +- Voir aussi l'attribut `showActiveTooltip` : (défaut `false`) Affiche une info-bulle persistante pour la section visualisée activement dans la navigation verticale. -- `slidesNavigation` : (par défaut `false`) Si défini à `true`, il affichera une barre de navigation composée de petits cercles pour chaque curseur de paysage sur le site. +### slidesNavigation +(défaut `false`) Si défini à `true`, il affichera une barre de navigation composée de petits cercles pour chaque curseur de paysage sur le site. -- `slidesNavPosition` : (par défaut `bottom`) Définit la position de la barre de navigation en mode paysage pour les curseurs. Admet les valeurs `top` et `bottom`. Vous pouvez modifier les styles CSS pour déterminer la distance du haut ou du bas ainsi que tout autre style tel que la couleur. +### slidesNavPosition +(défaut `bottom`) Définit la position de la barre de navigation en mode paysage pour les curseurs. Admet les valeurs `top` et `bottom`. Vous pouvez modifier les styles CSS pour déterminer la distance du haut ou du bas ainsi que tout autre style tel que la couleur. -- `scrollOverflow` : (par défaut `true`) définit si oui ou non il faut créer un défilement pour la section/glissière dans le cas où son contenu est plus grand que la hauteur de celle-ci. It requires the default value `scrollBar: false`. Afin d'éviter que fullpage.js ne crée la barre de défilement dans certaines sections ou diapositives, utilisez la classe `fp-noscroll`. Par exemple : `
          ` +### scrollOverflow +(défaut `true`) définit si oui ou non il faut créer un défilement pour la section/glissière dans le cas où son contenu est plus grand que la hauteur de celle-ci. It requires the default value `scrollBar: false`. Afin d'éviter que fullpage.js ne crée la barre de défilement dans certaines sections ou diapositives, utilisez la classe `fp-noscroll`. Par exemple : `
          ` Vous pouvez aussi empêcher le scrolloverflow d'être appliqué en mode réactif lorsque vous utilisez `fp-auto-height-responsive` dans l'élément section. -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) +### scrollOverflowMacStyle +(default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) -- Le `scrollOverflowReset` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Quand il est défini à `true`, il fait défiler le contenu de la section/glissière avec la barre de défilement en partant vers une autre section verticale. De cette façon, la section/glissière affichera toujours le début de son contenu, même si elle défile à partir d'une section située en dessous. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +### scrollOverflowReset +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Quand il est défini à `true`, il fait défiler le contenu de la section/glissière avec la barre de défilement en partant vers une autre section verticale. De cette façon, la section/glissière affichera toujours le début de son contenu, même si elle défile à partir d'une section située en dessous. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `sectionSelector` : (par défaut `.section`) Définit le sélecteur Javascript utilisé pour les sections du plugin. Il peut avoir besoin d'être changé parfois pour éviter des problèmes avec d'autres plugins utilisant les mêmes sélecteurs que fullpage.js. +### sectionSelector +(défaut `.section`) Définit le sélecteur Javascript utilisé pour les sections du plugin. Il peut avoir besoin d'être changé parfois pour éviter des problèmes avec d'autres plugins utilisant les mêmes sélecteurs que fullpage.js. -- `slideSelector` : (par défaut `.slide`) Définit le sélecteur Javascript utilisé pour les diapositives du plugin. Il peut avoir besoin d'être changé parfois pour éviter des problèmes avec d'autres plugins utilisant les mêmes sélecteurs que fullpage.js. +### slideSelector +(défaut `.slide`) Définit le sélecteur Javascript utilisé pour les diapositives du plugin. Il peut avoir besoin d'être changé parfois pour éviter des problèmes avec d'autres plugins utilisant les mêmes sélecteurs que fullpage.js. -- `responsiveWidth` : (par défaut `0`) Un défilement normal (`autoScrolling:false`) sera utilisé sous la largeur définie en pixels. Une classe `fp-responsive` est ajoutée à la balise body au cas où l'utilisateur voudrait l'utiliser pour son propre CSS réactif. Par exemple, si elle est définie à 900, chaque fois que la largeur du navigateur est inférieure à 900, le plugin défile comme un site normal. +### responsiveWidth +(défaut `0`) Un défilement normal (`autoScrolling:false`) sera utilisé sous la largeur définie en pixels. Une classe `fp-responsive` est ajoutée à la balise body au cas où l'utilisateur voudrait l'utiliser pour son propre CSS réactif. Par exemple, si elle est définie à 900, chaque fois que la largeur du navigateur est inférieure à 900, le plugin défile comme un site normal. -- `responsiveHeight` : (par défaut `0`) Un défilement normal (`autoScrolling:false`) sera utilisé sous la hauteur définie en pixels. Une classe `fp-responsive` est ajoutée à la balise body au cas où l'utilisateur voudrait l'utiliser pour son propre CSS réactif. Par exemple, si elle est définie à 900, chaque fois que la hauteur du navigateur est inférieure à 900, le plugin défile comme un site normal. +### responsiveHeight +(défaut `0`) Un défilement normal (`autoScrolling:false`) sera utilisé sous la hauteur définie en pixels. Une classe `fp-responsive` est ajoutée à la balise body au cas où l'utilisateur voudrait l'utiliser pour son propre CSS réactif. Par exemple, si elle est définie à 900, chaque fois que la hauteur du navigateur est inférieure à 900, le plugin défile comme un site normal. -- Les `responsiveSlides` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Quand il est réglé sur `true`, les diapositives seront transformées en sections verticales quand le mode réactif est activé. (en utilisant les options `responsiveWidth` ou `responsiveHeight` détaillées ci-dessus). Nécessite fullpage.js >= 3.0.1. +### responsiveSlides +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Quand il est réglé sur `true`, les diapositives seront transformées en sections verticales quand le mode réactif est activé. (en utilisant les options `responsiveWidth` ou `responsiveHeight` détaillées ci-dessus). Nécessite fullpage.js >= 3.0.1. -- `parallax:true`. [En savoir plus sur la façon d'appliquer l'option parallax](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/french/parallax-extension.md). +### parallax:true +[En savoir plus sur la façon d'appliquer l'option parallax](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/french/parallax-extension.md). -- `parallaxOptions`: (default: `{ type: 'reveal', percentage: 62, property: 'translate'}`). Allows to configure the parameters for the parallax backgrounds effect when using the option `parallax:true`. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). +### parallaxOptions +(default: `{ type: 'reveal', percentage: 62, property: 'translate'}`). +Allows to configure the parameters for the parallax backgrounds effect when using the option `parallax:true`. [Read more about how to apply the parallax option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension---Parallax). -- `dropEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). +Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(default: `{ animateContent: true, animateOnMouseMove: true}`). +Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards` : (par défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit s'il faut ou non utiliser l'effet des cartes sur les sections/glissières. [Lire plus sur comment appliquer l'option cartes](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(défaut `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Définit s'il faut ou non utiliser l'effet des cartes sur les sections/glissières. [Lire plus sur comment appliquer l'option cartes](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions` : (par défaut : `{ perspective : 100, fadeContent : true, fadeBackground : true}`). Vous permet de configurer les paramètres pour l'effet des cartes quand vous utilisez l'option `cards:true`. [Lire plus sur comment appliquer l'option cartes](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(défaut : `{ perspective : 100, fadeContent : true, fadeBackground : true}`). +Vous permet de configurer les paramètres pour l'effet des cartes quand vous utilisez l'option `cards:true`. [Lire plus sur comment appliquer l'option cartes](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading` : (par défaut `true`) Le chargement paresseux est actif par défaut ce qui signifie qu'il chargera paresseusement tout élément média contenant l'attribut `data-src` comme détaillé dans la [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js/tree/dev/lang/french/#lazy-loading) . Si vous voulez utiliser une autre bibliothèque de chargement paresseux, vous pouvez désactiver cette fonctionnalité de fullpage.js. +### lazyLoading +(défaut `true`) Le chargement paresseux est actif par défaut ce qui signifie qu'il chargera paresseusement tout élément média contenant l'attribut `data-src` comme détaillé dans la [Lazy Loading docs](https://github.com/alvarotrigo/fullPage.js/tree/dev/lang/french/#lazy-loading) . Si vous voulez utiliser une autre bibliothèque de chargement paresseux, vous pouvez désactiver cette fonctionnalité de fullpage.js. -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) +### observer +(default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) +### credits +(default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) ## Méthodes Vous pouvez les voir en action [ici](https://alvarotrigo.com/fullPage/examples/methods.html) @@ -1073,13 +1138,10 @@ Vous voulez créer des fichiers de distribution fullpage.js ? Veuillez consulter ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1100,3 +1162,9 @@ Devenez sponsor et obtenez votre logo sur notre README sur Github avec un lien v + +## Contributors + + + + \ No newline at end of file diff --git a/lang/korean/README.md b/lang/korean/README.md index e7b4764be..e855813d7 100644 --- a/lang/korean/README.md +++ b/lang/korean/README.md @@ -17,7 +17,7 @@

          --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -372,168 +372,234 @@ fullpage.js는 기본 기능을 강화하기 위해 쓸 수 있는 [여러가지 ## 옵션 -- `licenseKey`: (기본값 `null`). **이 옵션은 필수입니다.** fullPage를 비오픈소스 프로젝트에서 쓰신다면 fullPage 상업 라이선스 구매시 받으신 라이선스 키를 쓰셔야 합니다. If your project is open source you can [request a license key](https://alvarotrigo.com/fullPage/extensions/requestKey.html). 라이선스에 관한 더 상세한 정보는 [여기](https://github.com/alvarotrigo/fullPage.js#license)와 [웹사이트에서](https://alvarotrigo.com/fullPage/pricing/) 읽어보실 수 있습니다. 예시: +### licenseKey +(기본값 `null`). **이 옵션은 필수입니다.** fullPage를 비오픈소스 프로젝트에서 쓰신다면 fullPage 상업 라이선스 구매시 받으신 라이선스 키를 쓰셔야 합니다. If your project is open source you can [request a license key](https://alvarotrigo.com/fullPage/extensions/requestKey.html). 라이선스에 관한 더 상세한 정보는 [여기](https://github.com/alvarotrigo/fullPage.js#license)와 [웹사이트에서](https://alvarotrigo.com/fullPage/pricing/) 읽어보실 수 있습니다. 예시: - ```javascript - new fullpage('#fullpage', { - licenseKey: 'YOUR_KEY_HERE' - }); - ``` +```javascript +new fullpage('#fullpage', { + licenseKey: 'YOUR_KEY_HERE' +}); +``` -- `controlArrows`: (기본값 `true`) 제어 화살표를 눌러서 슬라이드가 오른쪽 또는 왼쪽으로 움직이도록 허용할지 여부를 결정합니다. +### controlArrows +(기본값 `true`) 제어 화살표를 눌러서 슬라이드가 오른쪽 또는 왼쪽으로 움직이도록 허용할지 여부를 결정합니다. -- `controlArrowsHTML`: (default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) +### controlArrowsHTML +(default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) -- `verticalCentered`: (기본값 `true`) 구역 내 컨텐츠가 수직으로 중심에 위치하도록 합니다. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered +(기본값 `true`) 구역 내 컨텐츠가 수직으로 중심에 위치하도록 합니다. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed`: (기본값 `700`) 스크롤 이동 속도를 0.001초 단위로 설정합니다. +### scrollingSpeed +(기본값 `700`) 스크롤 이동 속도를 0.001초 단위로 설정합니다. -- `sectionsColor`: (기본값 `none`) 각 구역별 CSS `background-color` 속성을 정의합니다. 아래는 예시입니다. +### sectionsColor +(기본값 `none`) 각 구역별 CSS `background-color` 속성을 정의합니다. 아래는 예시입니다. - ```javascript - new fullpage('#fullpage', { - sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], - }); - ``` +```javascript +new fullpage('#fullpage', { + sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], +}); +``` -- `anchors`: (기본값 `[]`) 각 구역별 URL에 보여질 앵커 링크(#예시)를 정의합니다. 앵커값이 고유해야 합니다. 배열 내 앵커의 위치가 어느 구역에 앵커가 적용될지를 정의합니다. (두번째 위치는 두번째 구역에 적용 등). 앵커를 쓰시면 브라우저를 통한 앞뒤 이동도 가능해집니다. 이 옵션을 통해 사용자가 특정 구역이나 슬라이드에 책갈피 표시도 할 수 있습니다. **주의하세요!** 앵커는 웹사이트에서 모든 ID 요소(또는 IE용 NAME 요소)와 동일한 값을 지닐 수 없습니다. +### anchors +(기본값 `[]`) 각 구역별 URL에 보여질 앵커 링크(#예시)를 정의합니다. 앵커값이 고유해야 합니다. 배열 내 앵커의 위치가 어느 구역에 앵커가 적용될지를 정의합니다. (두번째 위치는 두번째 구역에 적용 등). 앵커를 쓰시면 브라우저를 통한 앞뒤 이동도 가능해집니다. 이 옵션을 통해 사용자가 특정 구역이나 슬라이드에 책갈피 표시도 할 수 있습니다. **주의하세요!** 앵커는 웹사이트에서 모든 ID 요소(또는 IE용 NAME 요소)와 동일한 값을 지닐 수 없습니다. 여기에 설명된 대로 이제는 `data-anchor` 속성을 써서 HTML 구조에서 직접 앵커를 정의할 수 있습니다. -- `lockAnchors`: (기본값 `false`) URL에 있는 앵커가 라이브러리에서 효과를 지닐지 말지를 결정합니다. 나만의 기능과 콜백을 위해 여전히 내부에서 앵커를 쓸 수는 있지만 웹사이트 스크롤에는 아무런 효과가 없습니다. URL에 있는 앵커를 써서 fullPage.js를 다른 플러그인과 결합할 때 유용합니다. +### lockAnchors +(기본값 `false`) URL에 있는 앵커가 라이브러리에서 효과를 지닐지 말지를 결정합니다. 나만의 기능과 콜백을 위해 여전히 내부에서 앵커를 쓸 수는 있지만 웹사이트 스크롤에는 아무런 효과가 없습니다. URL에 있는 앵커를 써서 fullPage.js를 다른 플러그인과 결합할 때 유용합니다. -- `easing`: (기본값 `easeInOutCubic`) 수직 및 수평 스크롤시 전이 효과를 정의합니다. +### easing +(기본값 `easeInOutCubic`) 수직 및 수평 스크롤시 전이 효과를 정의합니다. [전이](https://api.jqueryui.com/easings/) 효과 중 일부를 사용하기 위해서는 `vendors/easings.min.js` 또는 [jQuery UI](https://jqueryui.com/) 파일이 필요합니다. 대신 다른 라이브러리를 쓸 수도 있습니다. -- `easingcss3`: (기본값 `ease`) `css3:true`를 쓰는 경우 사용할 전이 효과를 정의합니다. (`linear`, `ease-out` 등) [미리 정의된 효과](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp)를 쓰시거나 `cubic-bezier` 기능을 쓰셔서 나만의 효과를 만드실 수 있습니다. [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/)도 쓰실 수 있습니다. +### easingcss3 +(기본값 `ease`) `css3:true`를 쓰는 경우 사용할 전이 효과를 정의합니다. (`linear`, `ease-out` 등) [미리 정의된 효과](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp)를 쓰시거나 `cubic-bezier` 기능을 쓰셔서 나만의 효과를 만드실 수 있습니다. [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/)도 쓰실 수 있습니다. -- `loopTop`: (기본값 `false`) 첫번째 구역에서 스크롤을 위로 올릴 때 마지막 구역으로 이동할지 여부를 정의합니다. +### loopTop +(기본값 `false`) 첫번째 구역에서 스크롤을 위로 올릴 때 마지막 구역으로 이동할지 여부를 정의합니다. -- `loopBottom`: (기본값 `false`) 마지막 구역에서 스크롤을 아래로 내릴 때 첫번째 구역으로 이동할지 여부를 정의합니다. +### loopBottom +(기본값 `false`) 마지막 구역에서 스크롤을 아래로 내릴 때 첫번째 구역으로 이동할지 여부를 정의합니다. -- `loopHorizontal`: (기본값 `true`) 수평 슬라이더가 마지막이나 이전 슬라이드에 다다른 후 다시 반복할지 여부를 정의합니다. +### loopHorizontal +(기본값 `true`) 수평 슬라이더가 마지막이나 이전 슬라이드에 다다른 후 다시 반복할지 여부를 정의합니다. -- `css3`: (기본값 `true`). 구역과 슬라이드 안에서 스크롤하기 위해 JavaScript를 쓸지 CSS3을 쓸지를 정의합니다. CSS3 지원 브라우저를 쓰는 태블릿과 스마트폰에서 움직이는 속도를 높이는 데 유용합니다. 이 옵션을 `true`로 설정하고 브라우저가 CSS3을 지원하지 않는다면 폴백(fallback)이 대신 쓰이게 됩니다. +### css3 +(기본값 `true`). 구역과 슬라이드 안에서 스크롤하기 위해 JavaScript를 쓸지 CSS3을 쓸지를 정의합니다. CSS3 지원 브라우저를 쓰는 태블릿과 스마트폰에서 움직이는 속도를 높이는 데 유용합니다. 이 옵션을 `true`로 설정하고 브라우저가 CSS3을 지원하지 않는다면 폴백(fallback)이 대신 쓰이게 됩니다. -- `autoScrolling`: (기본값 `true`) "automatic" 스크롤을 쓸지 "normal" 스크롤을 쓸지를 정의합니다. 태블릿과 스마트폰 브라우저/기기 창에서 구역이 들어맞는 방법에도 영향을 미칩니다. +### autoScrolling +(기본값 `true`) "automatic" 스크롤을 쓸지 "normal" 스크롤을 쓸지를 정의합니다. 태블릿과 스마트폰 브라우저/기기 창에서 구역이 들어맞는 방법에도 영향을 미칩니다. -- `fitToSection`: (기본값 `true`) 구역을 모바일 지원(viewport)에 맞출지 말지를 결정합니다. `true`로 설정하면 현재 활성화된 구역이 항상 모바일 지원(viewport) 전체를 가득 채웁니다. 그렇지 않은 경우에는 사용자는 구역 중간에서 자유롭게 멈출 수 있습니다. +### fitToSection +(기본값 `true`) 구역을 모바일 지원(viewport)에 맞출지 말지를 결정합니다. `true`로 설정하면 현재 활성화된 구역이 항상 모바일 지원(viewport) 전체를 가득 채웁니다. 그렇지 않은 경우에는 사용자는 구역 중간에서 자유롭게 멈출 수 있습니다. -- `fitToSectionDelay`: (기본값 1000). `fitToSection`이 true로 설정되면 설정된 1000분의 1초 단위로 맞춤을 지연합니다. +### fitToSectionDelay +(기본값 1000). `fitToSection`이 true로 설정되면 설정된 1000분의 1초 단위로 맞춤을 지연합니다. -- `scrollBar`: (기본값 `false`) 웹사이트에 스크롤 막대기를 쓸지 말지를 결정합니다. 스크롤 막대기를 쓰는 경우 `autoScrolling` 기능이 여전히 예상대로 작동할 것입니다. 또한 사용자는 스크롤 막대기로 웹사이트에서 이동할 수도 있으며 스크롤이 끝나면 fullPage.js가 화면 구역에 맞춰집니다. +### scrollBar +(기본값 `false`) 웹사이트에 스크롤 막대기를 쓸지 말지를 결정합니다. 스크롤 막대기를 쓰는 경우 `autoScrolling` 기능이 여전히 예상대로 작동할 것입니다. 또한 사용자는 스크롤 막대기로 웹사이트에서 이동할 수도 있으며 스크롤이 끝나면 fullPage.js가 화면 구역에 맞춰집니다. -- `paddingTop`: (기본값 `0`) 구역별 상위에 채우는 부분을 수치와 측정값(`paddingTop: '10px'`, `paddingTop: '10em'`...)으로 정의합니다. 고정된 머리말을 쓰실 때 유용합니다. +### paddingTop +(기본값 `0`) 구역별 상위에 채우는 부분을 수치와 측정값(`paddingTop: '10px'`, `paddingTop: '10em'`...)으로 정의합니다. 고정된 머리말을 쓰실 때 유용합니다. -- `paddingBottom`: (기본값 `0`) 구역별 하위에 채우는 부분을 수치와 측정값(`paddingBottom: '10px'`, `paddingBottom: '10em'`...)으로 정의합니다. 고정된 꼬리말을 쓰실 때 유용합니다. +### paddingBottom +(기본값 `0`) 구역별 하위에 채우는 부분을 수치와 측정값(`paddingBottom: '10px'`, `paddingBottom: '10em'`...)으로 정의합니다. 고정된 꼬리말을 쓰실 때 유용합니다. -- `fixedElements`: (기본값 `null`) 플러그인의 스크롤 구조에서 어느 요소를 빼낼지를 정의합니다. `css3` 옵션을 쓰실 때 고정하려면 반드시 빼내셔야 합니다. 이 요소에는 Javascript 선택자가 들어간 문자열이 필요합니다. (예시: `fixedElements: '#element1, .element2'`) +### fixedElements +(기본값 `null`) 플러그인의 스크롤 구조에서 어느 요소를 빼낼지를 정의합니다. `css3` 옵션을 쓰실 때 고정하려면 반드시 빼내셔야 합니다. 이 요소에는 Javascript 선택자가 들어간 문자열이 필요합니다. (예시: `fixedElements: '#element1, .element2'`) -- `normalScrollElements`: (기본값 `null`) [데모](https://codepen.io/alvarotrigo/pen/RmVazM) 일부 요소 위를 스크롤할때 자동 스크롤을 피하고 싶으시다면 이 옵션을 쓰셔야 합니다. (지도, div 스크롤 등에 유용.) 이 요소에는 Javascript 선택자가 들어간 문자열이 필요합니다. (예시: `normalScrollElements: '#element1, .element2'`) +### normalScrollElements +(기본값 `null`) [데모](https://codepen.io/alvarotrigo/pen/RmVazM) 일부 요소 위를 스크롤할때 자동 스크롤을 피하고 싶으시다면 이 옵션을 쓰셔야 합니다. (지도, div 스크롤 등에 유용.) 이 요소에는 Javascript 선택자가 들어간 문자열이 필요합니다. (예시: `normalScrollElements: '#element1, .element2'`) -- `bigSectionsDestination`: (기본값 `null`) [데모](https://codepen.io/alvarotrigo/pen/vYLdMrx) 모바일 지원(viewport)보다 더 큰 구역으로 어떻게 스크롤하는지 정의합니다. 기본 설정시 fullPage.js는 목적지 위에 있는 구역에서 내려오는 경우 상위로 스크롤하고 목적지 아래에 있는 구역에서 올라오는 경우 하위로 스크롤합니다. `top`, `bottom`, `null` 값이 가능합니다. +### bigSectionsDestination +(기본값 `null`) [데모](https://codepen.io/alvarotrigo/pen/vYLdMrx) 모바일 지원(viewport)보다 더 큰 구역으로 어떻게 스크롤하는지 정의합니다. 기본 설정시 fullPage.js는 목적지 위에 있는 구역에서 내려오는 경우 상위로 스크롤하고 목적지 아래에 있는 구역에서 올라오는 경우 하위로 스크롤합니다. `top`, `bottom`, `null` 값이 가능합니다. -- `keyboardScrolling`: (기본값 `true`) 키보드를 써서 컨텐츠 사이를 이동할 수 있는지 정의합니다. +### keyboardScrolling +(기본값 `true`) 키보드를 써서 컨텐츠 사이를 이동할 수 있는지 정의합니다. -- `touchSensitivity`: (기본값 `5`) 브라우저 창 너비/폭 퍼센트와 다음 구역 / 슬라이드로 이동하는 데 필요한 스와이프 거리를 정의합니다. +### touchSensitivity +(기본값 `5`) 브라우저 창 너비/폭 퍼센트와 다음 구역 / 슬라이드로 이동하는 데 필요한 스와이프 거리를 정의합니다. -- `continuousVertical`: (기본값 `false`) 마지막 구역에서 아래로 스크롤할때 첫번째 구역으로 스크롤이 내려가야 할지를 정의하고, 첫번째 구역에서 위로 스크롤할때 마지막 구역으로 스크롤이 올라가야 할지를 정의합니다. `loopTop`, `loopBottom` 또는 웹사이트에 있는 모든 스크롤 막대기와 호환되지 않습니다. (`scrollBar:true` 또는 `autoScrolling:false`) +### continuousVertical +(기본값 `false`) 마지막 구역에서 아래로 스크롤할때 첫번째 구역으로 스크롤이 내려가야 할지를 정의하고, 첫번째 구역에서 위로 스크롤할때 마지막 구역으로 스크롤이 올라가야 할지를 정의합니다. `loopTop`, `loopBottom` 또는 웹사이트에 있는 모든 스크롤 막대기와 호환되지 않습니다. (`scrollBar:true` 또는 `autoScrolling:false`) -- `continuousHorizontal`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 마지막 슬라이드에서 오른쪽으로 미끄러질 때 오른쪽으로 이동하여 첫번째 슬라이드로 이동할지를 정의하고, 첫번째 슬라이드에서 왼쪽으로 스크롤할때 왼쪽으로 이동하면서 마지막 슬라이드로 이동할지를 정의합니다. `loopHorizontal`과 호환되지 않습니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. +### continuousHorizontal +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 마지막 슬라이드에서 오른쪽으로 미끄러질 때 오른쪽으로 이동하여 첫번째 슬라이드로 이동할지를 정의하고, 첫번째 슬라이드에서 왼쪽으로 스크롤할때 왼쪽으로 이동하면서 마지막 슬라이드로 이동할지를 정의합니다. `loopHorizontal`과 호환되지 않습니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `scrollHorizontally`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 슬라이더 안에서 마우스 휠 또는 트랙패드를 써서 수평으로 미끄러지듯 움직일지를 정의합니다. 이야기 전달에 적합합니다. It can only be used when using: `autoScrolling:true`. fullpage.js 버전이 3.0.1 이상이어야 합니다. +### scrollHorizontally +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 슬라이더 안에서 마우스 휠 또는 트랙패드를 써서 수평으로 미끄러지듯 움직일지를 정의합니다. 이야기 전달에 적합합니다. It can only be used when using: `autoScrolling:true`. fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `interlockedSlides`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 수평 슬라이더 하나를 움직일 때 다른 구역에 있는 슬라이더가 강제로 같은 방향으로 미끄러지도록 할지를 정의합니다. `true`, `false` 또는 서로 잠긴 구역이 있는 배열값이 가능합니다. 예를 들면 1에서 시작하는 `[1,3,5]`가 가능합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. +### interlockedSlides +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 수평 슬라이더 하나를 움직일 때 다른 구역에 있는 슬라이더가 강제로 같은 방향으로 미끄러지도록 할지를 정의합니다. `true`, `false` 또는 서로 잠긴 구역이 있는 배열값이 가능합니다. 예를 들면 1에서 시작하는 `[1,3,5]`가 가능합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `dragAndMove`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 마우스나 손가락을 써서 구역과 슬라이드를 끌어오고 튕기는 걸 활성화하거나 비활성화합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. 아래 값을 쓰실 수 있습니다. - - `true`: 기능 활성화. - - `false`: 기능 비활성화. +### dragAndMove +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 마우스나 손가락을 써서 구역과 슬라이드를 끌어오고 튕기는 걸 활성화하거나 비활성화합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. 아래 값을 쓰실 수 있습니다. + - ` true`: 기능 활성화. + - ` false`: 기능 비활성화. - `vertical`: 수직으로만 기능 구현. - `horizontal`: 수평으로만 기능 구현. - `fingersonly`: 터치 기기에서만 기능 구현. - `mouseonly`: 데스크탑 기기에서만 기능 구현(마우스와 트랙패드). -- `offsetSections`: (기본값 `false`)[fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 전체화면이 아닌 구역을 퍼센트에 기반하여 쓸 수 있는 방법을 지원합니다. 방문객에게 다음이나 이전 구역의 일부를 보여줌으로써 웹사이트에 더 많은 컨텐츠가 있음을 보여주는 데 적합합니다. fullPage.js 버전이 3.0.1 이상이어야 합니다. 각 구역의 퍼센트를 정의하려면 `data-percentage` 속성을 쓰셔야 합니다. `data-centered` 속성에서 불리언(boolean) 값을 써서 모바일 지원(viewport)에서 구역이 중앙에 오도록 정의할 수 있습니다(명시하지 않을 경우 `true`가 기본값). 다음은 예시입니다. +### offsetSections +(기본값 `false`)[fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 전체화면이 아닌 구역을 퍼센트에 기반하여 쓸 수 있는 방법을 지원합니다. 방문객에게 다음이나 이전 구역의 일부를 보여줌으로써 웹사이트에 더 많은 컨텐츠가 있음을 보여주는 데 적합합니다. fullPage.js 버전이 3.0.1 이상이어야 합니다. 각 구역의 퍼센트를 정의하려면 `data-percentage` 속성을 쓰셔야 합니다. `data-centered` 속성에서 불리언(boolean) 값을 써서 모바일 지원(viewport)에서 구역이 중앙에 오도록 정의할 수 있습니다(명시하지 않을 경우 `true`가 기본값). 다음은 예시입니다. - ``` html -
          - ``` +``` html +
          +``` -- `resetSliders`: (기본값 `false`). [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 구역을 떠난 후 모든 슬라이더가 제자리로 돌아가도록 할지를 정의합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. +### resetSliders +(기본값 `false`). [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 구역을 떠난 후 모든 슬라이더가 제자리로 돌아가도록 할지를 정의합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `fadingEffect`: (기본값 `false`). [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 기본설정인 스크롤 효과 대신 사라지는 효과를 쓸지를 정의합니다. `true`, `false`, `sections`, `slides` 값이 가능합니다. 그러므로 수직이나 수평 또는 수직 수평이 동시에 적용되는 것만 가능합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. +### fadingEffect +(기본값 `false`). [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 기본설정인 스크롤 효과 대신 사라지는 효과를 쓸지를 정의합니다. `true`, `false`, `sections`, `slides` 값이 가능합니다. 그러므로 수직이나 수평 또는 수직 수평이 동시에 적용되는 것만 가능합니다. fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `animateAnchor`: (기본값 `true`) 앵커(#)가 주어질 때 웹사이트를 불러오면 애니메이션이 들어간 스크롤 형태로 목적지로 이동할지, 아니면 주어진 구역에서 바로 불러올지를 정의합니다. +### animateAnchor +(기본값 `true`) 앵커(#)가 주어질 때 웹사이트를 불러오면 애니메이션이 들어간 스크롤 형태로 목적지로 이동할지, 아니면 주어진 구역에서 바로 불러올지를 정의합니다. -- `recordHistory`: (기본값 `true`) 웹사이트 상태를 브라우저 방문 기록에 맞게 밀지를 정의합니다. `true`로 설정되면 웹사이트의 각 구역/슬라이드가 새로운 페이지가 되어 브라우저의 뒤로 가기/앞으로 가기 버튼을 누르면 구역/슬라이드를 스크롤하여 웹사이트의 이전 방문 페이지나 다음 페이지로 이동합니다. `false`로 설정되면 URL이 계속 바뀌어도 브라우저 방문 기록에 아무런 영향을 미치지 않습니다. `autoScrolling:false`값을 쓰면 이 옵션이 자동으로 꺼집니다. +### recordHistory +(기본값 `true`) 웹사이트 상태를 브라우저 방문 기록에 맞게 밀지를 정의합니다. `true`로 설정되면 웹사이트의 각 구역/슬라이드가 새로운 페이지가 되어 브라우저의 뒤로 가기/앞으로 가기 버튼을 누르면 구역/슬라이드를 스크롤하여 웹사이트의 이전 방문 페이지나 다음 페이지로 이동합니다. `false`로 설정되면 URL이 계속 바뀌어도 브라우저 방문 기록에 아무런 영향을 미치지 않습니다. `autoScrolling:false`값을 쓰면 이 옵션이 자동으로 꺼집니다. -- `menu`: (기본값 `false`) 선택자를 써서 구역에 링크할 메뉴를 구체적으로 정할 수 있습니다. 이렇게 하면 `active` 클래스를 써서 구역을 스크롤할때 메뉴에 있는 대응하는 요소가 활성화됩니다. 이렇게 하면 메뉴를 만드는 것이 아니라 `active` 클래스를 대응하는 앵커 링크와 함께 주어진 메뉴에 있는 요소에 추가만 합니다. 구역에 메뉴 요소의 링크를 걸기 위해서는 구역 안에서 사용된 것과 동일한 앵커 링크와 함께 사용하기 위해 HTML 5 데이터-태크(`data-menuanchor`)가 필요합니다. 다음은 예시입니다. +### menu +(기본값 `false`) 선택자를 써서 구역에 링크할 메뉴를 구체적으로 정할 수 있습니다. 이렇게 하면 `active` 클래스를 써서 구역을 스크롤할때 메뉴에 있는 대응하는 요소가 활성화됩니다. 이렇게 하면 메뉴를 만드는 것이 아니라 `active` 클래스를 대응하는 앵커 링크와 함께 주어진 메뉴에 있는 요소에 추가만 합니다. 구역에 메뉴 요소의 링크를 걸기 위해서는 구역 안에서 사용된 것과 동일한 앵커 링크와 함께 사용하기 위해 HTML 5 데이터-태크(`data-menuanchor`)가 필요합니다. 다음은 예시입니다. - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu: '#myMenu' - }); - ``` +```html + +``` +```javascript +new fullpage('#fullpage', { + anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], + menu: '#myMenu' +}); +``` - **주의:** `css3:true`를 쓸 때 문제가 생기지 않도록 하려면 메뉴 요소를 전체 페이지 포장 밖에 두셔야 합니다. 그렇지 않으면 플러그인 자체가 메뉴 요소를 `body`에 덧붙여 버립니다. +**주의:** `css3:true`를 쓸 때 문제가 생기지 않도록 하려면 메뉴 요소를 전체 페이지 포장 밖에 두셔야 합니다. 그렇지 않으면 플러그인 자체가 메뉴 요소를 `body`에 덧붙여 버립니다. -- `navigation`: (기본값 `false`) `true`로 설정되면 작은 원으로 이루어진 이동 막대기가 나타납니다. +### navigation +(기본값 `false`) `true`로 설정되면 작은 원으로 이루어진 이동 막대기가 나타납니다. -- `navigationPosition`: (기본값 `none`) `left`나 `right`로 설정될 수 있습니다. (만약 쓰실 경우) 이동 막대기가 보여지는 위치를 정의합니다. +### navigationPosition +(기본값 `none`) `left`나 `right`로 설정될 수 있습니다. (만약 쓰실 경우) 이동 막대기가 보여지는 위치를 정의합니다. -- `navigationTooltips`: (기본값 []) 이동 원을 쓰시는 경우 보여질 말풍선 위젯을 정의합니다. 다음은 예시입니다. `navigationTooltips: ['firstSlide', 'secondSlide']`. 원하신다면 구역마다 `data-tooltip` 속성을 쓰셔서 정의할 수 있습니다. +### navigationTooltips +(기본값 []) 이동 원을 쓰시는 경우 보여질 말풍선 위젯을 정의합니다. 다음은 예시입니다. `navigationTooltips: ['firstSlide', 'secondSlide']`. 원하신다면 구역마다 `data-tooltip` 속성을 쓰셔서 정의할 수 있습니다. -- `showActiveTooltip`: (기본값 `false`) 수직으로 이동할때 능동적 구역 보기를 위해 계속 따라다니는 말풍선 위젯을 보여줍니다. +### showActiveTooltip +(기본값 `false`) 수직으로 이동할때 능동적 구역 보기를 위해 계속 따라다니는 말풍선 위젯을 보여줍니다. -- `slidesNavigation`: (기본값 `false`) `true`로 설정되면 웹사이트에서 각 수평방향 슬라이더마다 작은 원으로 이루어진 이동 막대기를 보여줍니다. +### slidesNavigation +(기본값 `false`) `true`로 설정되면 웹사이트에서 각 수평방향 슬라이더마다 작은 원으로 이루어진 이동 막대기를 보여줍니다. -- `slidesNavPosition`: (기본값 `bottom`) 수평방향 이동 막대기 슬라이더 위치를 지정합니다. `top`과 `bottom`을 값으로 인정합니다. 상부 또는 하부에서의 거리와 색깔 등 다른 모든 스타일을 정의하려면 CSS 스타일을 수정하시면 됩니다. +### slidesNavPosition +(기본값 `bottom`) 수평방향 이동 막대기 슬라이더 위치를 지정합니다. `top`과 `bottom`을 값으로 인정합니다. 상부 또는 하부에서의 거리와 색깔 등 다른 모든 스타일을 정의하려면 CSS 스타일을 수정하시면 됩니다. -- `scrollOverflow`: (기본값 `false`) 컨텐츠가 구역/슬라이드의 높이보다 더 큰 경우 스크롤을 만들지 여부를 정의합니다. `true`로 설정되면 컨텐츠가 플러그인으로 포장됩니다.It requires the default value `scrollBar: false`. 특정 구역이나 슬라이드에서 fullpage.js의 스크롤 막대기를 생성하고 싶지 않으시다면 `fp-noscroll` 클래스를 쓰세요. 예시: `
          `. 구역 요소에서 `fp-auto-height-responsive`를 쓰시면 반응형 모드에서는 scrolloverflow가 적용되지 않습니다. +### scrollOverflow +(기본값 `false`) 컨텐츠가 구역/슬라이드의 높이보다 더 큰 경우 스크롤을 만들지 여부를 정의합니다. `true`로 설정되면 컨텐츠가 플러그인으로 포장됩니다.It requires the default value `scrollBar: false`. 특정 구역이나 슬라이드에서 fullpage.js의 스크롤 막대기를 생성하고 싶지 않으시다면 `fp-noscroll` 클래스를 쓰세요. 예시: `
          `. 구역 요소에서 `fp-auto-height-responsive`를 쓰시면 반응형 모드에서는 scrolloverflow가 적용되지 않습니다. -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) +### scrollOverflowMacStyle +(default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) -- `scrollOverflowReset`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). `true`로 설정되면 다른 수직 구역으로 옮겨갈 때 구역/슬라이드의 컨텐츠를 스크롤 막대기와 함께 위로 스크롤합니다. 이렇게 하면 구역/슬라이드 아래에서 스크롤하더라도 언제나 컨텐츠 처음 부분을 볼 수 있습니다. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +### scrollOverflowReset +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). `true`로 설정되면 다른 수직 구역으로 옮겨갈 때 구역/슬라이드의 컨텐츠를 스크롤 막대기와 함께 위로 스크롤합니다. 이렇게 하면 구역/슬라이드 아래에서 스크롤하더라도 언제나 컨텐츠 처음 부분을 볼 수 있습니다. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `sectionSelector`: (기본값 `.section`) 플러그인 구역에 쓰이는 Javascript 선택자를 정의합니다. fullpage.js와 동일한 선택자를 쓰는 다른 플러그인과 문제를 일으키지 않도록 가끔 변경해야 할 수도 있습니다. +### sectionSelector +(기본값 `.section`) 플러그인 구역에 쓰이는 Javascript 선택자를 정의합니다. fullpage.js와 동일한 선택자를 쓰는 다른 플러그인과 문제를 일으키지 않도록 가끔 변경해야 할 수도 있습니다. -- `slideSelector`: (기본값 `.slide`) 플러그인 슬라이드에 쓰이는 Javascript 선택자를 정의합니다. fullpage.js와 동일한 선택자를 쓰는 다른 플러그인과 문제를 일으키지 않도록 가끔 변경해야 할 수도 있습니다. +### slideSelector +(기본값 `.slide`) 플러그인 슬라이드에 쓰이는 Javascript 선택자를 정의합니다. fullpage.js와 동일한 선택자를 쓰는 다른 플러그인과 문제를 일으키지 않도록 가끔 변경해야 할 수도 있습니다. -- `responsiveWidth`: (기본값 `0`) 픽셀로 정의된 폭 아래에 정상 스크롤(`autoScrolling:false`)을 씁니다. 사용자가 자신만의 반응형 CSS에 쓰고 싶은 경우를 위해 `fp-responsive` 클래스가 바디 태그에 추가됩니다. 예를 들어 900에 설정되는 경우 브라우저의 너비가 900 미만이 될 때마다 플러그인이 정상 웹사이트처럼 스크롤됩니다. +### responsiveWidth +(기본값 `0`) 픽셀로 정의된 폭 아래에 정상 스크롤(`autoScrolling:false`)을 씁니다. 사용자가 자신만의 반응형 CSS에 쓰고 싶은 경우를 위해 `fp-responsive` 클래스가 바디 태그에 추가됩니다. 예를 들어 900에 설정되는 경우 브라우저의 너비가 900 미만이 될 때마다 플러그인이 정상 웹사이트처럼 스크롤됩니다. -- `responsiveHeight`: (기본값 `0`) 픽셀로 정의된 높이 아래에 정상 스크롤(`autoScrolling:false`)을 씁니다. 사용자가 자신만의 반응형 CSS에 쓰고 싶은 경우를 위해 `fp-responsive` 클래스가 바디 태그에 추가됩니다. 예를 들어 900에 설정되는 경우 브라우저의 높이가 900 미만이 될 때마다 플러그인이 정상 웹사이트처럼 스크롤됩니다. +### responsiveHeight +(기본값 `0`) 픽셀로 정의된 높이 아래에 정상 스크롤(`autoScrolling:false`)을 씁니다. 사용자가 자신만의 반응형 CSS에 쓰고 싶은 경우를 위해 `fp-responsive` 클래스가 바디 태그에 추가됩니다. 예를 들어 900에 설정되는 경우 브라우저의 높이가 900 미만이 될 때마다 플러그인이 정상 웹사이트처럼 스크롤됩니다. -- `responsiveSlides`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). `true`로 설정될 경우 반응형 모드가 실행되면 슬라이드가 수직 구역으로 바뀝니다. (위에 상세히 설명된 `responsiveWidth` 또는 `responsiveHeight` 옵션을 써서 구현됩니다). fullpage.js 버전이 3.0.1 이상이어야 합니다. +### responsiveSlides +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). `true`로 설정될 경우 반응형 모드가 실행되면 슬라이드가 수직 구역으로 바뀝니다. (위에 상세히 설명된 `responsiveWidth` 또는 `responsiveHeight` 옵션을 써서 구현됩니다). fullpage.js 버전이 3.0.1 이상이어야 합니다. -- `parallax`: (기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 구역 / 슬라이드에서 패럴랙스 배경 효과를 쓸지 여부를 정의합니다. [패럴랙스 옵션을 어떻게 적용하는지 읽어보세요](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/korean/parallax-extension.md). +### parallax +(기본값 `false`) [fullpage.js 확장 프로그램](https://alvarotrigo.com/fullPage/extensions/). 구역 / 슬라이드에서 패럴랙스 배경 효과를 쓸지 여부를 정의합니다. [패럴랙스 옵션을 어떻게 적용하는지 읽어보세요](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/korean/parallax-extension.md). -- `parallaxOptions`: (기본값: `{ type: 'reveal', percentage: 62, property: 'translate'}`). parallax:true 옵션을 쓰실 때 패럴랙스 배경 효과 매개변수를 설정하실 수 있습니다. [패럴랙스 옵션을 어떻게 적용하는지 읽어보세요](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/korean/parallax-extension.md). +### parallaxOptions +(기본값: `{ type: 'reveal', percentage: 62, property: 'translate'}`). +parallax:true 옵션을 쓰실 때 패럴랙스 배경 효과 매개변수를 설정하실 수 있습니다. [패럴랙스 옵션을 어떻게 적용하는지 읽어보세요](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/korean/parallax-extension.md). -- `dropEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). +Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(default: `{ animateContent: true, animateOnMouseMove: true}`). +Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). +Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading`: (기본값 `true`) 기본 설정으로 지연 로딩이 활성화됩니다. [지연 로딩 문서](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/korean#%EC%A7%80%EC%97%B0-%EB%A1%9C%EB%94%A9)에 자세히 설명된 대로 `data-src` 속성을 지닌 모든 미디어 요소를 지연 로딩합니다. 이외 다른 지연 로딩 라이브러리를 쓰고 싶으시다면 이 fullpage.js 기능을 비활성화하실 수 있습니다. +### lazyLoading +(기본값 `true`) 기본 설정으로 지연 로딩이 활성화됩니다. [지연 로딩 문서](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/korean#%EC%A7%80%EC%97%B0-%EB%A1%9C%EB%94%A9)에 자세히 설명된 대로 `data-src` 속성을 지닌 모든 미디어 요소를 지연 로딩합니다. 이외 다른 지연 로딩 라이브러리를 쓰고 싶으시다면 이 fullpage.js 기능을 비활성화하실 수 있습니다. -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) +### observer +(default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) +### credits +(default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) ## 방법 어떻게 작동하는지 [여기](https://alvarotrigo.com/fullPage/examples/methods.html)서 보실 수 있습니다. @@ -1035,13 +1101,10 @@ fullpage.js 배포 파일을 구축하고 싶으신가요? [구축 도전](https ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1064,3 +1127,10 @@ Become a sponsor and get your logo on our README on Github with a link to your s + +## Contributors + + + + + diff --git a/lang/russian/README.md b/lang/russian/README.md index 405d6f1c0..c3569059b 100644 --- a/lang/russian/README.md +++ b/lang/russian/README.md @@ -18,7 +18,7 @@ --- -![Версия fullPage.js](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![Версия fullPage.js](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![Лицензия](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![Перечисление на PayPal](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -381,167 +381,232 @@ fullpage.js [предоставляет ряд расширений](https://alv ## Опции -- `licenseKey`: (по умолчанию `null`). **Эта опция является обязательной.** Если вы используете fullPage для проекта с закрытым исходным кодом, то вам следует воспользоваться лицензионным ключом, предоставляемым при приобретении коммерческой лицензии fullPage.если ваш проект открыт с открытым исходным кодом, [свяжитесь со мной](https://alvarotrigo.com/fullPage/extensions/requestKey.html), чтобы получить лицензионный ключ.. Вы можете прочесть подробнее о лицензиях [здесь](https://github.com/alvarotrigo/fullPage.js#license) и [на веб-сайте](https://alvarotrigo.com/fullPage/pricing/). Пример: +### licenseKey +(по умолчанию `null`). **Эта опция является обязательной.** Если вы используете fullPage для проекта с закрытым исходным кодом, то вам следует воспользоваться лицензионным ключом, предоставляемым при приобретении коммерческой лицензии fullPage.если ваш проект открыт с открытым исходным кодом, [свяжитесь со мной](https://alvarotrigo.com/fullPage/extensions/requestKey.html), чтобы получить лицензионный ключ.. Вы можете прочесть подробнее о лицензиях [здесь](https://github.com/alvarotrigo/fullPage.js#license) и [на веб-сайте](https://alvarotrigo.com/fullPage/pricing/). Пример: - ```javascript - new fullpage('#fullpage', { - licenseKey: 'YOUR_KEY_HERE' - }); - ``` +```javascript +new fullpage('#fullpage', { + licenseKey: 'YOUR_KEY_HERE' +}); +``` -- `controlArrows`: (по умолчанию `true`) Определяет использование клавиш-стрелок для передвижения вправо или влево при просмотре слайдов. +### controlArrows +(по умолчанию `true`) Определяет использование клавиш-стрелок для передвижения вправо или влево при просмотре слайдов. -- `controlArrowsHTML`: (default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) +### controlArrowsHTML +(default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) -- `verticalCentered`: (по умолчанию `true`) Вертикальное центрирование контента в разделах. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered +(по умолчанию `true`) Вертикальное центрирование контента в разделах. (Uses flexbox) You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed`: (по умолчанию `700`) Ускорьте на миллисекунды переходы при скроллинге. +### scrollingSpeed +(по умолчанию `700`) Ускорьте на миллисекунды переходы при скроллинге. -- `sectionsColor`: (по умолчанию `none`) Присвойте CSS-свойство `background-color` каждому разделу. +### sectionsColor +(по умолчанию `none`) Присвойте CSS-свойство `background-color` каждому разделу. Пример: - ```javascript - new fullpage('#fullpage', { - sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], - }); - ``` +```javascript +new fullpage('#fullpage', { + sectionsColor: ['#f2f2f2', '#4BBFC3', '#7BAABE', 'whitesmoke', '#000'], +}); +``` -- `anchors`: (по умолчанию `[]`) Обеспечивает размещение ссылок с привязками (#пример) в URL для каждого раздела. Значения привязок должны быть уникальными. Положение привязок в ряду будет определять то, к какому разделу применяется привязка. (вторая позиция для второго раздела и так далее). Использование привязок также даёт возможность навигации вперёд и назад в браузере. Эта опция также даёт пользователям возможность добавлять в закладки определённый раздел или слайд. **Внимание!** привязки не могут иметь значение, совпадающее с каким-либо элементом ID на сайте (или элементом NAME - для IE). +### anchors +(по умолчанию `[]`) Обеспечивает размещение ссылок с привязками (#пример) в URL для каждого раздела. Значения привязок должны быть уникальными. Положение привязок в ряду будет определять то, к какому разделу применяется привязка. (вторая позиция для второго раздела и так далее). Использование привязок также даёт возможность навигации вперёд и назад в браузере. Эта опция также даёт пользователям возможность добавлять в закладки определённый раздел или слайд. **Внимание!** привязки не могут иметь значение, совпадающее с каким-либо элементом ID на сайте (или элементом NAME - для IE). Теперь привязки могут добавляться прямо в HTML-структуре с помощью атрибута `data-anchor`, как объясняется здесь. -- `lockAnchors`: (по умолчанию `false`) Определяет, будут ли вообще действовать в библиотеке привязки в URL. Вы по-прежнему сможете использовать привязки в закрытом формате для ваших собственных функций и обратных вызовов, но в скроллинге сайта они участвовать не будут. Это полезная функция, если вы хотите совместить fullPage.js с другими плагинами, использующими привязки в URL. +### lockAnchors +(по умолчанию `false`) Определяет, будут ли вообще действовать в библиотеке привязки в URL. Вы по-прежнему сможете использовать привязки в закрытом формате для ваших собственных функций и обратных вызовов, но в скроллинге сайта они участвовать не будут. Это полезная функция, если вы хотите совместить fullPage.js с другими плагинами, использующими привязки в URL. -- `easing`: (по умолчанию `easeInOutCubic`) Определяет эффект перехода, используемый при вертикальном и горизонтальном скроллинге. +### easing +(по умолчанию `easeInOutCubic`) Определяет эффект перехода, используемый при вертикальном и горизонтальном скроллинге. Необходим файл `vendors/easings.min.js` или [jQuery UI](https://jqueryui.com/) для использования некоторых из [переходов](https://api.jqueryui.com/easings/). Могут использоваться другие библиотеки. -- `easingcss3`: (по умолчанию `ease`) Определяет эффект перехода для применения в случае использования `css3:true`. Вы можете использовать [предустановленные эффекты](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (такие как `linear`, `ease-out`...) или создать свои собственные при помощи функции `cubic-bezier`. Вы также можете использовать для этой цели [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/`). +### easingcss3 +(по умолчанию `ease`) Определяет эффект перехода для применения в случае использования `css3:true`. Вы можете использовать [предустановленные эффекты](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (такие как `linear`, `ease-out`...) или создать свои собственные при помощи функции `cubic-bezier`. Вы также можете использовать для этой цели [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/`). -- `loopTop`: (по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к последнему разделу при пролистывании первого раздела вверх. +### loopTop +(по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к последнему разделу при пролистывании первого раздела вверх. -- `loopBottom`: (по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к первому разделу при пролистывании последнего раздела вниз. +### loopBottom +(по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к первому разделу при пролистывании последнего раздела вниз. -- `loopHorizontal`: (по умолчанию `true`) Определяет, будут ли горизонтальные слайдеры работать циклично после перехода к последнему или предыдущему слайду. +### loopHorizontal +(по умолчанию `true`) Определяет, будут ли горизонтальные слайдеры работать циклично после перехода к последнему или предыдущему слайду. -- `css3`: (по умолчанию `true`). Определяет использование JavaScript или CSS3-трансформаций для скроллинга в пределах разделов и слайдов. Эта функция помогает ускорить пролистывание для планшетов и мобильных устройств, браузеры которых поддерживают CSS3. Если установлено значение `true` для этой опции и браузер не поддерживает CSS3, будет использована альтернатива. +### css3 +(по умолчанию `true`). Определяет использование JavaScript или CSS3-трансформаций для скроллинга в пределах разделов и слайдов. Эта функция помогает ускорить пролистывание для планшетов и мобильных устройств, браузеры которых поддерживают CSS3. Если установлено значение `true` для этой опции и браузер не поддерживает CSS3, будет использована альтернатива. -- `autoScrolling`: (по умолчанию `true`) Определяет использование «автоматического» скроллинга или «обычного». Также эта опция влияет на размещение разделов в окне браузера/устройства для планшетов и мобильных устройств. +### autoScrolling +(по умолчанию `true`) Определяет использование «автоматического» скроллинга или «обычного». Также эта опция влияет на размещение разделов в окне браузера/устройства для планшетов и мобильных устройств. -- `fitToSection`: (по умолчанию `true`) Определяет, нужна ли подстройка разделов под окно просмотра. При установке значения `true` для данной опции текущий активный раздел всегда будет заполнять окно просмотра. В противном случае пользователь будет иметь возможность остановиться на середине раздела (когда ) +### fitToSection +(по умолчанию `true`) Определяет, нужна ли подстройка разделов под окно просмотра. При установке значения `true` для данной опции текущий активный раздел всегда будет заполнять окно просмотра. В противном случае пользователь будет иметь возможность остановиться на середине раздела (когда ) -- `fitToSectionDelay`: (по умолчанию 1000). Если для опции `fitToSection` установлено значение `true`, данная функция замедлит подстройку на настроенные миллисекунды. +### fitToSectionDelay +(по умолчанию 1000). Если для опции `fitToSection` установлено значение `true`, данная функция замедлит подстройку на настроенные миллисекунды. -- `scrollBar`: (по умолчанию `false`) Определяет, будет ли использоваться полоса прокрутки на сайте. При использовании полосы прокрутки функция `autoScrolling` будет работать как обычно. Пользователь по-прежнему сможет пролистывать сайт с помощью полосы прокрутки, и fullPage.js подстроит раздел под экран по окончании скроллинга. +### scrollBar +(по умолчанию `false`) Определяет, будет ли использоваться полоса прокрутки на сайте. При использовании полосы прокрутки функция `autoScrolling` будет работать как обычно. Пользователь по-прежнему сможет пролистывать сайт с помощью полосы прокрутки, и fullPage.js подстроит раздел под экран по окончании скроллинга. -- `paddingTop`: (по умолчанию `0`) Определяет верхний отступ для каждого раздела в числовом формате (paddingTop: '10px', paddingTop: '10em'...) Данная функция удобна при использовании фиксированных верхних колонтитулов. +### paddingTop +(по умолчанию `0`) Определяет верхний отступ для каждого раздела в числовом формате (paddingTop: '10px', paddingTop: '10em'...) Данная функция удобна при использовании фиксированных верхних колонтитулов. -- `paddingBottom`: (по умолчанию `0`) Определяет нижний отступ для каждого раздела в числовом формате (paddingBottom: '10px', paddingBottom: '10em'...). Данная функция удобна при использовании фиксированных нижних колонтитулов. +### paddingBottom +(по умолчанию `0`) Определяет нижний отступ для каждого раздела в числовом формате (paddingBottom: '10px', paddingBottom: '10em'...). Данная функция удобна при использовании фиксированных нижних колонтитулов. -- `fixedElements`: (по умолчанию `null`) Определяет, какие элементы будут исключены из структуры скроллинга плагина, что необходимо при использовании опции `css3` для их фиксации. Для этого необходима строка с селекторами Javascript для данных элементов. (Например: `fixedElements: '#element1, .element2'`) +### fixedElements +(по умолчанию `null`) Определяет, какие элементы будут исключены из структуры скроллинга плагина, что необходимо при использовании опции `css3` для их фиксации. Для этого необходима строка с селекторами Javascript для данных элементов. (Например: `fixedElements: '#element1, .element2'`) -- `normalScrollElements`: (по умолчанию `null`) [Демо](https://codepen.io/alvarotrigo/pen/RmVazM) Если вы хотите избежать автопрокрутки при скроллинге некоторых элементов, вам нужно использовать эту опцию. (пригодится для карт, прокрутки div-элементов и т.д.) Для этого необходима строка с селекторами Javascript для данных элементов. (Например: `normalScrollElements: '#element1, .element2'`). Данную опцию следует применять к самим разделам/слайдам. +### normalScrollElements +(по умолчанию `null`) [Демо](https://codepen.io/alvarotrigo/pen/RmVazM) Если вы хотите избежать автопрокрутки при скроллинге некоторых элементов, вам нужно использовать эту опцию. (пригодится для карт, прокрутки div-элементов и т.д.) Для этого необходима строка с селекторами Javascript для данных элементов. (Например: `normalScrollElements: '#element1, .element2'`). Данную опцию следует применять к самим разделам/слайдам. -- `bigSectionsDestination`: (по умолчанию `null`) [Демо](https://codepen.io/alvarotrigo/pen/vYLdMrx) Определяет, как должна осуществляться прокрутка к разделу, размер которого превышает размер окна просмотра. По умолчанию fullPage.js пролистывает вверх, если вы попадаете из раздела над заданным, и вниз, если вы попадаете из раздела под заданным. Возможные значения: `top`, `bottom`, `null`. +### bigSectionsDestination +(по умолчанию `null`) [Демо](https://codepen.io/alvarotrigo/pen/vYLdMrx) Определяет, как должна осуществляться прокрутка к разделу, размер которого превышает размер окна просмотра. По умолчанию fullPage.js пролистывает вверх, если вы попадаете из раздела над заданным, и вниз, если вы попадаете из раздела под заданным. Возможные значения: `top`, `bottom`, `null`. -- `keyboardScrolling`: (по умолчанию `true`) Определяет возможность навигации на сайте при помощи клавиатуры. +### keyboardScrolling +(по умолчанию `true`) Определяет возможность навигации на сайте при помощи клавиатуры. -- `touchSensitivity`: (по умолчанию `5`) Определяет ширину и высоту браузеров в процентах, а также то, насколько длинным должно быть пролистывание для перехода к следующему разделу/слайду. +### touchSensitivity +(по умолчанию `5`) Определяет ширину и высоту браузеров в процентах, а также то, насколько длинным должно быть пролистывание для перехода к следующему разделу/слайду. -- `continuousVertical`: (по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к последнему разделу при пролистывании первого раздела вверх и к первому разделу при пролистывании последнего раздела вниз. Опция несовместима с опциями `loopTop`, `loopBottom` и любыми полосами прокрутки, используемыми на сайте (`scrollBar:true` или `autoScrolling:false`). +### continuousVertical +(по умолчанию `false`) Определяет, будет ли осуществляться скроллинг к последнему разделу при пролистывании первого раздела вверх и к первому разделу при пролистывании последнего раздела вниз. Опция несовместима с опциями `loopTop`, `loopBottom` и любыми полосами прокрутки, используемыми на сайте (`scrollBar:true` или `autoScrolling:false`). -- `continuousHorizontal`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будет ли при пролистывании вправо последнего слайда осуществляться прокрутка вправо к первому слайду, а также приведёт ли прокрутка влево первого слайда к прокрутке влево к последнему слайду. Опция несовместима с опцией `loopHorizontal`. Необходима версия fullpage.js >= 3.0.1. +### continuousHorizontal +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будет ли при пролистывании вправо последнего слайда осуществляться прокрутка вправо к первому слайду, а также приведёт ли прокрутка влево первого слайда к прокрутке влево к последнему слайду. Опция несовместима с опцией `loopHorizontal`. Необходима версия fullpage.js >= 3.0.1. -- `scrollHorizontally`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет осуществление горизонтального пролистывания ползунков при помощи колеса мыши или трекпада. Идеальна для рассказов. It can only be used when using: `autoScrolling:true`. Необходима версия fullpage.js >= 3.0.1. +### scrollHorizontally +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет осуществление горизонтального пролистывания ползунков при помощи колеса мыши или трекпада. Идеальна для рассказов. It can only be used when using: `autoScrolling:true`. Необходима версия fullpage.js >= 3.0.1. -- `interlockedSlides`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет ,будет ли при передвижении одного горизонтального ползунка осуществляться пролистывание ползунков другого раздела в том же направлении. Возможные значения: `true`, `false` или последовательность взаимосвязанных разделов. Например: `[1,3,5]`, начиная с 1. Необходима версия fullpage.js >= 3.0.1. +### interlockedSlides +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет ,будет ли при передвижении одного горизонтального ползунка осуществляться пролистывание ползунков другого раздела в том же направлении. Возможные значения: `true`, `false` или последовательность взаимосвязанных разделов. Например: `[1,3,5]`, начиная с 1. Необходима версия fullpage.js >= 3.0.1. -- `dragAndMove`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Активирует или деактивирует протягивание и пролистывание разделов и слайдов при помощи мыши или пальцев. Возможные значения: `true`, `false`, `vertical`, `horizontal`, `fingersonly`, `mouseonly`,. Необходима версия fullPage.js >= 3.0.1. +### dragAndMove +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Активирует или деактивирует протягивание и пролистывание разделов и слайдов при помощи мыши или пальцев. Возможные значения: `true`, `false`, `vertical`, `horizontal`, `fingersonly`, `mouseonly`,. Необходима версия fullPage.js >= 3.0.1. -- `offsetSections`: (по умолчанию `false`)[Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Обеспечивает возможность использовать неполноэкранные разделы на основании их процентных значений. Опция идеальна для демонстрации пользователю того, что на сайте есть больше контента, показывая часть следующего или предыдущего раздела. Необходима версия fullPage.js >= 3.0.1 +### offsetSections +(по умолчанию `false`)[Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Обеспечивает возможность использовать неполноэкранные разделы на основании их процентных значений. Опция идеальна для демонстрации пользователю того, что на сайте есть больше контента, показывая часть следующего или предыдущего раздела. Необходима версия fullPage.js >= 3.0.1 Для определения процентного значения каждого раздела необходимо использовать атрибут `data-percentage`. Центрирование раздела в окне просмотра может определяться при помощи логического значения в атрибуте `data-centered` (по умолчанию `true`, если не определено). Например: - ``` html -
          - ``` +``` html +
          +``` -- `resetSliders`: (по умолчанию `false`). [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, необходимо ли возвращать в исходное положение каждый ползунок после покидания раздела, в котором он размещён. Необходима версия fullpage.js >= 3.0.1. +### resetSliders +(по умолчанию `false`). [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, необходимо ли возвращать в исходное положение каждый ползунок после покидания раздела, в котором он размещён. Необходима версия fullpage.js >= 3.0.1. -- `fadingEffect`: (по умолчанию `false`). [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будет ли использоваться эффект затухания вместо используемого по умолчанию эффекта прокрутки. Возможные значения `true`, `false`, `sections`, `slides`. Таким образом, данный параметр может применяться только вертикально или горизонтально, или же одновременно в обоих направлениях. Необходима версия fullpage.js >= 3.0.1. +### fadingEffect +(по умолчанию `false`). [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будет ли использоваться эффект затухания вместо используемого по умолчанию эффекта прокрутки. Возможные значения `true`, `false`, `sections`, `slides`. Таким образом, данный параметр может применяться только вертикально или горизонтально, или же одновременно в обоих направлениях. Необходима версия fullpage.js >= 3.0.1. -- `animateAnchor`: (по умолчанию `true`) Определяет, будет ли во время загрузки сайта при использовании привязок (#) осуществляться прокрутка с анимацией к назначенному разделу или же напрямую. +### animateAnchor +(по умолчанию `true`) Определяет, будет ли во время загрузки сайта при использовании привязок (#) осуществляться прокрутка с анимацией к назначенному разделу или же напрямую. -- `recordHistory`: (по умолчанию `true`) Определяет, нужно ли отображать состояние сайта в истории браузера. При установке значения `true` каждый раздел/слайд сайта будет действовать как новая страница, и кнопки браузера «назад» и «вперёд» прокрутят разделы/слайды для перехода к предыдущему или следующему состоянию сайта. При установке значения `false` URL будет продолжать меняться, но не отразится на истории браузера. Данная опция отключается автоматически при использовании опции `autoScrolling:false`. +### recordHistory +(по умолчанию `true`) Определяет, нужно ли отображать состояние сайта в истории браузера. При установке значения `true` каждый раздел/слайд сайта будет действовать как новая страница, и кнопки браузера «назад» и «вперёд» прокрутят разделы/слайды для перехода к предыдущему или следующему состоянию сайта. При установке значения `false` URL будет продолжать меняться, но не отразится на истории браузера. Данная опция отключается автоматически при использовании опции `autoScrolling:false`. -- `menu`: (по умолчанию `false`) Селектор может использоваться для связи элементов меню с разделами. Таким образом, скроллинг разделов активирует соответствующий элемент меню при помощи класса `active`. +### menu +(по умолчанию `false`) Селектор может использоваться для связи элементов меню с разделами. Таким образом, скроллинг разделов активирует соответствующий элемент меню при помощи класса `active`. Это не приведёт к созданию нового меню, а лишь добавит класс `active` элементу в имеющемся меню с соответствующими ссылками с привязками. Чтобы связать элементы меню с разделами, необходимо будет использовать информационный блок HTML 5 (`data-menuanchor`) с теми же ссылками с привязками, которые используются в разделах. Пример: - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu: '#myMenu' - }); - ``` - - **Внимание:** элемент меню должен помещаться за пределами обёрточного кода для полного экрана во избежание проблем при использовании `css3:true`. В противном случае он будет присоединён к `body` самим плагином. +```html + +``` +```javascript +new fullpage('#fullpage', { + anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], + menu: '#myMenu' +}); +``` -- `navigation`: (по умолчанию `false`) При установке значения `true` панель навигации будет отображена в виде небольших кружков. +**Внимание:** элемент меню должен помещаться за пределами обёрточного кода для полного экрана во избежание проблем при использовании `css3:true`. В противном случае он будет присоединён к `body` самим плагином. -- `navigationPosition`: (по умолчанию `none`) Могут быть установлены значения `left` или `right`. Опция определяет, какое положение займет панель навигации (если она используется). +### navigation +(по умолчанию `false`) При установке значения `true` панель навигации будет отображена в виде небольших кружков. -- `navigationTooltips`: (по умолчанию []) Определяет справочные надписи, которые будут показаны для кружков навигационной панели, если они используются. Например: `navigationTooltips: ['firstSlide', 'secondSlide']`. Вы можете также определить их с помощью атрибута `data-tooltip` в каждом разделе, если хотите. +### navigationPosition +(по умолчанию `none`) Могут быть установлены значения `left` или `right`. Опция определяет, какое положение займет панель навигации (если она используется). -- `showActiveTooltip`: (по умолчанию `false`) Показывает постоянную справочную надпись для просматриваемого в данный момент раздела в вертикальной навигации. +### navigationTooltips +(по умолчанию []) Определяет справочные надписи, которые будут показаны для кружков навигационной панели, если они используются. Например: `navigationTooltips: ['firstSlide', 'secondSlide']`. Вы можете также определить их с помощью атрибута `data-tooltip` в каждом разделе, если хотите. -- `slidesNavigation`: (по умолчанию `false`) При установке значения `true` навигационная панель будет отображаться в виде небольших кружков для каждого горизонтального ползунка сайта. +### showActiveTooltip +(по умолчанию `false`) Показывает постоянную справочную надпись для просматриваемого в данный момент раздела в вертикальной навигации. -- `slidesNavPosition`: (по умолчанию `bottom`) Определяет местоположение горизонтальной навигационной панели для слайдеров. Возможные значения: `top` и `bottom`. При желании вы можете настроить стили CSS для определения расстояния от верхней до нижней части, так же как и любой другой стиль, например, цвет. +### slidesNavigation +(по умолчанию `false`) При установке значения `true` навигационная панель будет отображаться в виде небольших кружков для каждого горизонтального ползунка сайта. -- `scrollOverflow`: (по умолчанию `true`) определяет необходимость создания прокрутки для раздела/слайда, если контент превышает его высоту. It requires the default value `scrollBar: false`. Чтобы предотвратить создание fullpage.js полосы прокрутки в определённых разделах или слайдах, используйте класс `fp-noscroll`. Например: `
          `. Вы можете избежать применения scrolloverflow в отзывчивом режиме, используя `fp-auto-height-responsive` в элементе раздела. +### slidesNavPosition +(по умолчанию `bottom`) Определяет местоположение горизонтальной навигационной панели для слайдеров. Возможные значения: `top` и `bottom`. При желании вы можете настроить стили CSS для определения расстояния от верхней до нижней части, так же как и любой другой стиль, например, цвет. -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) +### scrollOverflow +(по умолчанию `true`) определяет необходимость создания прокрутки для раздела/слайда, если контент превышает его высоту. It requires the default value `scrollBar: false`. Чтобы предотвратить создание fullpage.js полосы прокрутки в определённых разделах или слайдах, используйте класс `fp-noscroll`. Например: `
          `. Вы можете избежать применения scrolloverflow в отзывчивом режиме, используя `fp-auto-height-responsive` в элементе раздела. -- `scrollOverflowReset`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). При установке значения `true` будет осуществляться прокрутка контента раздела/слайда с помощью полосы прокрутки при покидании другого вертикального раздела. Таким образом, раздел/слайд будет всегда показывать начало контента даже при скроллинге из раздела/слайда, расположенного ниже. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +### scrollOverflowMacStyle +(default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) -- `sectionSelector`: (по умолчанию `.section`) Определяет селектор Javascript, используемый для разделов с плагинами. Иногда требуется изменить его, чтобы избежать проблем с другими плагинами, использующими те же селекторы, что и fullpage.js. +### scrollOverflowReset +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). При установке значения `true` будет осуществляться прокрутка контента раздела/слайда с помощью полосы прокрутки при покидании другого вертикального раздела. Таким образом, раздел/слайд будет всегда показывать начало контента даже при скроллинге из раздела/слайда, расположенного ниже. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `slideSelector`: (по умолчанию `.slide`) Определяет селектор Javascript, используемый для слайдов с плагинами. Иногда требуется изменить его, чтобы избежать проблем с другими плагинами, использующими те же селекторы, что и fullpage.js. +### sectionSelector +(по умолчанию `.section`) Определяет селектор Javascript, используемый для разделов с плагинами. Иногда требуется изменить его, чтобы избежать проблем с другими плагинами, использующими те же селекторы, что и fullpage.js. -- `responsiveWidth`: (по умолчанию `0`) Будет использоваться стандартная прокрутка (`autoScrolling:false`), если ширина меньше, чем заданное значение в пикселях. Класс `fp-responsive` добавляется к тегу body, если пользователь желает использовать для собственного отзывчивого CSS. Например, если установлено значение 900, то, если ширина браузера составляет менее 900, плагин будет прокручивать, как обычный сайт. +### slideSelector +(по умолчанию `.slide`) Определяет селектор Javascript, используемый для слайдов с плагинами. Иногда требуется изменить его, чтобы избежать проблем с другими плагинами, использующими те же селекторы, что и fullpage.js. -- `responsiveHeight`: (по умолчанию `0`) Будет использоваться стандартная прокрутка (`autoScrolling:false`), если высота меньше, чем заданное значение в пикселях. Класс `fp-responsive` добавляется к тегу body, если пользователь желает использовать для собственного отзывчивого CSS. Например, если установлено значение 900, то, если высота браузера составляет менее 900, плагин будет прокручивать, как обычный сайт. +### responsiveWidth +(по умолчанию `0`) Будет использоваться стандартная прокрутка (`autoScrolling:false`), если ширина меньше, чем заданное значение в пикселях. Класс `fp-responsive` добавляется к тегу body, если пользователь желает использовать для собственного отзывчивого CSS. Например, если установлено значение 900, то, если ширина браузера составляет менее 900, плагин будет прокручивать, как обычный сайт. +### responsiveHeight +(по умолчанию `0`) Будет использоваться стандартная прокрутка (`autoScrolling:false`), если высота меньше, чем заданное значение в пикселях. Класс `fp-responsive` добавляется к тегу body, если пользователь желает использовать для собственного отзывчивого CSS. Например, если установлено значение 900, то, если высота браузера составляет менее 900, плагин будет прокручивать, как обычный сайт. -- `responsiveSlides`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). При установке значения `true` слайды будут трансформироваться в вертикальные разделы при активации отзывчивого режима. (с помощью опций `responsiveWidth` или `responsiveHeight`, подробно описанных выше). Необходима версия fullpage.js >= 3.0.1. +### responsiveSlides +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). При установке значения `true` слайды будут трансформироваться в вертикальные разделы при активации отзывчивого режима. (с помощью опций `responsiveWidth` или `responsiveHeight`, подробно описанных выше). Необходима версия fullpage.js >= 3.0.1. -- `parallax`: (по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будут ли использоваться эффекты параллакс для фона разделов / слайдов. [Узнайте больше об использовании опции параллакс здесь](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/russian/parallax-extension.md). +### parallax +(по умолчанию `false`) [Расширение fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Определяет, будут ли использоваться эффекты параллакс для фона разделов / слайдов. [Узнайте больше об использовании опции параллакс здесь](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/russian/parallax-extension.md). -- `parallaxOptions`: (по умолчанию: `{ type: 'reveal', percentage: 62, property: 'translate'}`). Позволяет настраивать параметры эффекта параллакс для фона при использовании опции parallax:true. [Узнайте больше об использовании опции параллакс здесь](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/russian/parallax-extension.md). +### parallaxOptions +(по умолчанию: `{ type: 'reveal', percentage: 62, property: 'translate'}`). +Позволяет настраивать параметры эффекта параллакс для фона при использовании опции parallax:true. [Узнайте больше об использовании опции параллакс здесь](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/russian/parallax-extension.md). -- `dropEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the drop effect on sections / slides. [Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). +Allows to configure the parameters for the drop effect when using the option `dropEffect:true`.[Read more about how to apply the the drop effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the water effect on sections / slides. [Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(default: `{ animateContent: true, animateOnMouseMove: true}`). +Allows to configure the parameters for the water effect when using the option `waterEffect:true`.[Read more about how to apply the the water effect option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards`: (default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(default `false`) [Extension of fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Defines whether or not to use the cards effect on sections/slides. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). +Allows you to configure the parameters for the cards effect when using the option `cards:true`. [Read more about how to apply the cards option](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading`: (по умолчанию `true`) Отложенная загрузка включена по умолчанию, что означает, что данная опция будет осуществлять отложенную загрузку любого медиа-элемента, содержащего атрибут `data-src`, как описано в [документации отложенной загрузки](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/russian/#Отложенная-загрузка). Если вы желаете использовать любую другую библиотеку отложенной загрузки, вы можете деактивировать данную функцию fullpage.js. +### lazyLoading +(по умолчанию `true`) Отложенная загрузка включена по умолчанию, что означает, что данная опция будет осуществлять отложенную загрузку любого медиа-элемента, содержащего атрибут `data-src`, как описано в [документации отложенной загрузки](https://github.com/alvarotrigo/fullPage.js/tree/master/lang/russian/#Отложенная-загрузка). Если вы желаете использовать любую другую библиотеку отложенной загрузки, вы можете деактивировать данную функцию fullpage.js. -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) +### observer +(default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) +### credits +(default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) ## Функции Можете увидеть их в действии [здесь](https://alvarotrigo.com/fullPage/examples/methods.html) @@ -1047,13 +1112,10 @@ new fullpage('#fullpage', { ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1075,4 +1137,10 @@ Become a sponsor and get your logo on our README on Github with a link to your s ### People + + +## Contributors + + + \ No newline at end of file diff --git a/lang/spanish/README.md b/lang/spanish/README.md index ee9fea2a6..5d31f4813 100644 --- a/lang/spanish/README.md +++ b/lang/spanish/README.md @@ -19,7 +19,7 @@ --- -![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.22-brightgreen.svg) +![fullPage.js version](https://img.shields.io/badge/fullPage.js-v4.0.23-brightgreen.svg) [![License](https://img.shields.io/badge/License-GPL-blue.svg)](https://www.gnu.org/licenses/gpl-3.0.html) [![PayPal Donate](https://img.shields.io/badge/donate-PayPal.me-ff69b4.svg)](https://www.paypal.me/alvarotrigo/9.95) [![jsDelivr Hits](https://data.jsdelivr.com/v1/package/npm/fullpage.js/badge?style=rounded)](https://www.jsdelivr.com/package/npm/fullpage.js) @@ -384,24 +384,30 @@ Luego podrás usar la extensión y configurarla tal y como se explica en las [op ## Opciones -- `licenseKey`: (por defecto `null`). **Esta opción es obligatoria.** Si usas fullPage.js en un proyecto que no sea código abierto, entonces tendrás que usar la clave de licencia que obtendrás al adquirir la licencia comercial de fullPage. Si tu proyecto es de código abierto y es compatible con la licencia GPLv3, puedes [solicitar una licencia](https://alvarotrigo.com/fullPage/extensions/requestKey.html) con un link a su repositorio para obtener una clave de licencia. +### licenseKey +(por defecto `null`). **Esta opción es obligatoria.** Si usas fullPage.js en un proyecto que no sea código abierto, entonces tendrás que usar la clave de licencia que obtendrás al adquirir la licencia comercial de fullPage. Si tu proyecto es de código abierto y es compatible con la licencia GPLv3, puedes [solicitar una licencia](https://alvarotrigo.com/fullPage/extensions/requestKey.html) con un link a su repositorio para obtener una clave de licencia. Puedes leer más acerca de las licencias [aquí](https://github.com/alvarotrigo/fullPage.js#license) y en la [página web](https://alvarotrigo.com/fullPage/pricing/). Por ejemplo. - ```javascript - new fullpage('#fullpage', { - licenseKey: 'YOUR_KEY_HERE' - }); - ``` +```javascript +new fullpage('#fullpage', { + licenseKey: 'YOUR_KEY_HERE' +}); +``` -- `controlArrows`: (por defecto `true`) Determina si usar flechas de control en las diapositivas para deslizar hacia la derecha o izquierda. +### controlArrows +(por defecto `true`) Determina si usar flechas de control en las diapositivas para deslizar hacia la derecha o izquierda. -- `controlArrowsHTML`: (default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) +### controlArrowsHTML +(default `['
          ', '
          '],`). Provides a way to define the HTML structure and the classes that you want to apply to the control arrows for sections with horizontal slides. The array contains the structure for both arrows. The first item is the left arrow and the second, the right one. (translation needed) -- `verticalCentered`: (por defecto `true`) centrado vertical de las secciones y diapositivas usando flexbox. You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) +### verticalCentered +(por defecto `true`) centrado vertical de las secciones y diapositivas usando flexbox. You might want to wrap your content in a `div` to avoid potential issues. (Uses `flex-direction: column; display: flex; justify-content: center;`) -- `scrollingSpeed`: (por defecto `700`) Velocidad de deslizamiento en milisegundos. +### scrollingSpeed +(por defecto `700`) Velocidad de deslizamiento en milisegundos. -- `sectionsColor`: (por defecto `none`) Define la propiedad CSS `background-color` para cada sección. +### sectionsColor +(por defecto `none`) Define la propiedad CSS `background-color` para cada sección. ```javascript new fullpage('#fullpage', { @@ -409,56 +415,80 @@ Puedes leer más acerca de las licencias [aquí](https://github.com/alvarotrigo/ }); ``` -- `anchors`: (por defecto `[]`) Define los enlaces de anclaje (#ejemplo) que serán mostrados en la URL para cada sección. Los enlaces de anclaje deben ser únicos. La posición de los enlaces en el array definirá a qué sección serán aplicados. (la segunda posición será la segunda sección y así). Usar la navegación del navegador para moverse a la página anterior y siguiente será posible cuando se usen enlaces de anclaje. Éstos también ofrecen la posibilidad de guardar una sección o diapositiva específica a favoritos. **Ten cuidado!**: las etiquetas `data-anchor` no pueden tener el mismo valor que ninguna otra etiqueta ID en la página (o `name` para Internet Explorer). +### anchors +(por defecto `[]`) Define los enlaces de anclaje (#ejemplo) que serán mostrados en la URL para cada sección. Los enlaces de anclaje deben ser únicos. La posición de los enlaces en el array definirá a qué sección serán aplicados. (la segunda posición será la segunda sección y así). Usar la navegación del navegador para moverse a la página anterior y siguiente será posible cuando se usen enlaces de anclaje. Éstos también ofrecen la posibilidad de guardar una sección o diapositiva específica a favoritos. **Ten cuidado!**: las etiquetas `data-anchor` no pueden tener el mismo valor que ninguna otra etiqueta ID en la página (o `name` para Internet Explorer). Ahora los enlaces de anclaje también se pueden definir directamente en la estructura HTML usando el atributo `data-anchor`. -- `lockAnchors`: (por defecto `false`) Determina si los enlaces de anclaje en la URL tendrán efecto en fullPage.js. Puedes usar los `anchor` de manera interna para tus propias funciones o dento de los callbacks, pero no tendrán ningún efecto en el desplazamiento de la página web. Útiles cuando quieres combinar fullPage.js con otros plugins que usan enlaces de anclaje en la URL. +### lockAnchors +(por defecto `false`) Determina si los enlaces de anclaje en la URL tendrán efecto en fullPage.js. Puedes usar los `anchor` de manera interna para tus propias funciones o dento de los callbacks, pero no tendrán ningún efecto en el desplazamiento de la página web. Útiles cuando quieres combinar fullPage.js con otros plugins que usan enlaces de anclaje en la URL. -- `easing`: (por defecto `easeInOutCubic`) Define el tipo de transición que usará fullPage.js para el desplazamiento vertical y horizontal de la página cuando se usa `css3:false` o el navegador no soporta animaciones CSS3. +### easing +(por defecto `easeInOutCubic`) Define el tipo de transición que usará fullPage.js para el desplazamiento vertical y horizontal de la página cuando se usa `css3:false` o el navegador no soporta animaciones CSS3. Requiere el archivo `vendors/easings.min.js` o [jQuery UI](https://jqueryui.com/) para usar algunas de [sus transiciones](https://api.jqueryui.com/easings/) Otras librerías puede ser usadas si se desea. -- `easingcss3`: (por defecto `ease`) Define el efecto de transición que usará fullPage.js cuando se usa `css3:true`. Puedes usar los [efectos predefinidos](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (como `linear`, `ease-out`...) o puedes crear tus propios efectos usando la función `cubic-bezier`. Puede que quieras ojear [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) para ello. +### easingcss3 +(por defecto `ease`) Define el efecto de transición que usará fullPage.js cuando se usa `css3:true`. Puedes usar los [efectos predefinidos](https://www.w3schools.com/cssref/css3_pr_transition-timing-function.asp) (como `linear`, `ease-out`...) o puedes crear tus propios efectos usando la función `cubic-bezier`. Puede que quieras ojear [Matthew Lein CSS Easing Animation Tool](https://matthewlein.com/ceaser/) para ello. -- `loopTop`: (por defecto `false`) Determina si hacer scroll hacia arriba estando en la primera sección te desplazará a la última o no. +### loopTop +(por defecto `false`) Determina si hacer scroll hacia arriba estando en la primera sección te desplazará a la última o no. -- `loopBottom`: (por defecto `false`) Determina si hacer scroll hacia abajo estando en la última sección te desplazará a la primera o no. +### loopBottom +(por defecto `false`) Determina si hacer scroll hacia abajo estando en la última sección te desplazará a la primera o no. -- `loopHorizontal`: (por defecto `true`) Determina si las diapositivas horizontales volverán a la primera o última diapositiva al llegar a la última o primera respectivamente. +### loopHorizontal +(por defecto `true`) Determina si las diapositivas horizontales volverán a la primera o última diapositiva al llegar a la última o primera respectivamente. -- `css3`: (por defecto `true`). Determina si fullPage.js usará JavasScript o animaciones CSS3 para realizar los desplazamientos entre secciones y diapositivas. Útil para mejorar el rendimiento en tabletas y dispositivos móviles así como en navegadores con soporte CSS3. Si esta opción se pone a `true` y el navegador no soporta animaciones CSS3, fullPage.js automáticamente lo volverá a poner a `false` para usar animaciones JavaScript. +### css3 +(por defecto `true`). Determina si fullPage.js usará JavasScript o animaciones CSS3 para realizar los desplazamientos entre secciones y diapositivas. Útil para mejorar el rendimiento en tabletas y dispositivos móviles así como en navegadores con soporte CSS3. Si esta opción se pone a `true` y el navegador no soporta animaciones CSS3, fullPage.js automáticamente lo volverá a poner a `false` para usar animaciones JavaScript. -- `autoScrolling`: (por defecto `true`) Determina si usar desplazamiento "automático" o "a saltos" o usar el desplazamiento tradicional de cualquier página. También afecta al modo en el que las secciones se ajustan a la ventana en tabletas y dispositivos móviles. +### autoScrolling +(por defecto `true`) Determina si usar desplazamiento "automático" o "a saltos" o usar el desplazamiento tradicional de cualquier página. También afecta al modo en el que las secciones se ajustan a la ventana en tabletas y dispositivos móviles. -- `fitToSection`: (por defecto `true`) Determina si "encajar" las secciones en el navegador o no. Esto tiene sentido cuando se usa `autoScrolling:false` o `scrollBar:false` o el modo responsive. Cuando se usa `true` la sección actual se desplazará en la pantalla hasta llegar el contenido de la ventana usando. De lo contrario el usuario podrá desplazarse libremente y parar en mitad de 2 secciones. +### fitToSection +(por defecto `true`) Determina si "encajar" las secciones en el navegador o no. Esto tiene sentido cuando se usa `autoScrolling:false` o `scrollBar:false` o el modo responsive. Cuando se usa `true` la sección actual se desplazará en la pantalla hasta llegar el contenido de la ventana usando. De lo contrario el usuario podrá desplazarse libremente y parar en mitad de 2 secciones. -- `fitToSectionDelay`: (por defecto `1000`). Si `fitToSection` está activo, esta opción define el tiempo en milisegundos que esperará fullpage.js desde que el usuario dejó de desplazarse hasta que la sección se encaja en la ventana. +### fitToSectionDelay +(por defecto `1000`). Si `fitToSection` está activo, esta opción define el tiempo en milisegundos que esperará fullpage.js desde que el usuario dejó de desplazarse hasta que la sección se encaja en la ventana. -- `scrollBar`: (por defecto `false`) Determina si se utiliza la barra de desplazamiento del navegador o no para las **secciones verticales**. En caso afirmativo, la funcionalidad de `autoScrolling` (de desplazamiento automático o "a saltos") funcionará como se espera. El usuario será también libre de desplazarse por la página usando la barra de navegación y fullpage.js encajará la sección cuando el desplazamiento cese siempre y cuando se use `fitToSection`. +### scrollBar +(por defecto `false`) Determina si se utiliza la barra de desplazamiento del navegador o no para las **secciones verticales**. En caso afirmativo, la funcionalidad de `autoScrolling` (de desplazamiento automático o "a saltos") funcionará como se espera. El usuario será también libre de desplazarse por la página usando la barra de navegación y fullpage.js encajará la sección cuando el desplazamiento cese siempre y cuando se use `fitToSection`. -- `paddingTop`: (por defecto `0`) Determina el "padding" superior para cada sección con un valor numérico y su unidad de medida (paddingTop: '10px', paddingTop: '10em'...). Útil cuando se usan cabeceras fijas (`fixed`). +### paddingTop +(por defecto `0`) Determina el "padding" superior para cada sección con un valor numérico y su unidad de medida (paddingTop: '10px', paddingTop: '10em'...). Útil cuando se usan cabeceras fijas (`fixed`). -- `paddingBottom`: (por defecto `0`) Determina el "padding" inferior para cada sección con un valor número y su unidad de medida (paddingBottom: '10px', paddingBottom: '10em'...) Útil cuando se usa un pie de página fijo (`fixed`). +### paddingBottom +(por defecto `0`) Determina el "padding" inferior para cada sección con un valor número y su unidad de medida (paddingBottom: '10px', paddingBottom: '10em'...) Útil cuando se usa un pie de página fijo (`fixed`). -- `fixedElements`: (por defecto `null`) Determina qué elementos serán extraídos de la estructura de fullPage.js. Cosa que es necesaria cuando se usa la opción `css3` para mantenerlos fijos (`fixed`). Requiere una cadena de texto con el selector de Javascript para dichos elementos. (Por ejemplo: `fixedElements: '#element1, .element2'`) +### fixedElements +(por defecto `null`) Determina qué elementos serán extraídos de la estructura de fullPage.js. Cosa que es necesaria cuando se usa la opción `css3` para mantenerlos fijos (`fixed`). Requiere una cadena de texto con el selector de Javascript para dichos elementos. (Por ejemplo: `fixedElements: '#element1, .element2'`) -- `normalScrollElements`: (por defecto `null`) [Demostración](https://codepen.io/alvarotrigo/pen/RmVazM) Si quieres evitar el auto desplazamiento (o desplazamiento a saltos) cuando se haga scroll encima de ciertos elementos, ésta es la opción a usar. (Útil para mapas, divs con scroll etc.). Requiere una cadena de texto con el selector de Javascript para dichos elementos.(Por ejemplo: `normalScrollElements: '#element1, .element2'`). Esta opción no debe ser aplicada directamente en las mismas secciones o diapositivas en sí, sino a elementos dentro de ellas. +### normalScrollElements +(por defecto `null`) [Demostración](https://codepen.io/alvarotrigo/pen/RmVazM) Si quieres evitar el auto desplazamiento (o desplazamiento a saltos) cuando se haga scroll encima de ciertos elementos, ésta es la opción a usar. (Útil para mapas, divs con scroll etc.). Requiere una cadena de texto con el selector de Javascript para dichos elementos.(Por ejemplo: `normalScrollElements: '#element1, .element2'`). Esta opción no debe ser aplicada directamente en las mismas secciones o diapositivas en sí, sino a elementos dentro de ellas. -- `bigSectionsDestination`: (por defecto `null`) [Demo](https://codepen.io/alvarotrigo/pen/vYLdMrx) Determina cómo desplazarse hacia una sección mayor que la ventana del navegador. Por defecto fullPage.js se desplazará hacia la parte superior de la sección si llegas desde una sección situada por encima y hacia la parte inferior si llegas desde una sección situada por debajo. Los posibles valores para esta opción son: `top`, `bottom`, `null`. +### bigSectionsDestination +(por defecto `null`) [Demo](https://codepen.io/alvarotrigo/pen/vYLdMrx) Determina cómo desplazarse hacia una sección mayor que la ventana del navegador. Por defecto fullPage.js se desplazará hacia la parte superior de la sección si llegas desde una sección situada por encima y hacia la parte inferior si llegas desde una sección situada por debajo. Los posibles valores para esta opción son: `top`, `bottom`, `null`. -- `keyboardScrolling`: (por defecto `true`) Determina si el contenido puede ser navegado usando el teclado. +### keyboardScrolling +(por defecto `true`) Determina si el contenido puede ser navegado usando el teclado. -- `touchSensitivity`: (por defecto `5`) Determina cierto porcentaje de la ventana del navegador a partir del cual fullpage.js registra un desplazamiento vertical. +### touchSensitivity +(por defecto `5`) Determina cierto porcentaje de la ventana del navegador a partir del cual fullpage.js registra un desplazamiento vertical. -- `continuousVertical`: (por defecto `false`) Determina si hacer scroll hacia abajo en la última sección producirá un desplazamiento hacia abajo hacia la primera sección o no, y si hacer scroll hacia arriba en la primera sección producirá un desplazamiento hacia arriba hacia la última sección. No es compatible con `loopTop`, `loopBottom` y ninguna barra de desplazamiento (usando `scrollBar:true` o `autoScrolling:false`). +### continuousVertical +(por defecto `false`) Determina si hacer scroll hacia abajo en la última sección producirá un desplazamiento hacia abajo hacia la primera sección o no, y si hacer scroll hacia arriba en la primera sección producirá un desplazamiento hacia arriba hacia la última sección. No es compatible con `loopTop`, `loopBottom` y ninguna barra de desplazamiento (usando `scrollBar:true` o `autoScrolling:false`). -- `continuousHorizontal`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si desplazarse hacia la derecha en la última diapositiva causará un desplazamiento hacia la derecha hacia la primera diapositiva, y si desplazarse hacia la izquierda en la primera diapositiva causará un desplazamiento hacia la izquierda hacia la última diapositiva. No es compatible con `loopHorizontal`. +### continuousHorizontal +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si desplazarse hacia la derecha en la última diapositiva causará un desplazamiento hacia la derecha hacia la primera diapositiva, y si desplazarse hacia la izquierda en la primera diapositiva causará un desplazamiento hacia la izquierda hacia la última diapositiva. No es compatible con `loopHorizontal`. -- `scrollHorizontally`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si desplazarse horizontalmente entre las diapositivas de la sección cuando se usa la ruleta del ratón o el trackpad. Sólamente funciona cuando se usa `autoScrolling:true`. Ideal para contar historias. +### scrollHorizontally +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si desplazarse horizontalmente entre las diapositivas de la sección cuando se usa la ruleta del ratón o el trackpad. Sólamente funciona cuando se usa `autoScrolling:true`. Ideal para contar historias. -- `interlockedSlides`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si al moverse horizontalmente una sección con diapositivas, ésto forzará el movimiento de otras diapositivas en otras secciones en la misma dirección. Los posibles valores son `true`, `false` o un array con las secciones que estarán interconectadas. Por ejemplo `[1,3,5]` empezando por 1. +### interlockedSlides +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si al moverse horizontalmente una sección con diapositivas, ésto forzará el movimiento de otras diapositivas en otras secciones en la misma dirección. Los posibles valores son `true`, `false` o un array con las secciones que estarán interconectadas. Por ejemplo `[1,3,5]` empezando por 1. -- `dragAndMove`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Habilita o deshabilita el desplazamiento de secciones y diapositivas usando el ratón o los dedos en dispositivos táctiles. Los posibles valores para esta opción son: +### dragAndMove +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Habilita o deshabilita el desplazamiento de secciones y diapositivas usando el ratón o los dedos en dispositivos táctiles. Los posibles valores para esta opción son: - `true`: habilita la función. - `false`: deshabilita la función. - `vertical`: habilita la funcion sólo verticalmente. @@ -466,91 +496,127 @@ Otras librerías puede ser usadas si se desea. - `fingersonly`: habilita la función sólo para dispositivos táctiles. - `mouseonly`: habilita la función sólo para ratón y trackpad (desktop). -- `offsetSections`: (por defecto `false`)[Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Provee una manera de usar secciones que no toman la pantalla completa sino un porcentaje determinado de la misma. Ideal para mostrar a los visitantes que hay más contenido en la página mostrando parte de sección siguiente o anterior. +### offsetSections +(por defecto `false`)[Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Provee una manera de usar secciones que no toman la pantalla completa sino un porcentaje determinado de la misma. Ideal para mostrar a los visitantes que hay más contenido en la página mostrando parte de sección siguiente o anterior. Para definir el porcentaje de la sección hay que hacer uso del atributo `data-percentage`. El centrado de la sección en la ventana puede definirse usando un valor booleano (true o false) en el atributo `data-centered`. (Por defecto será `true` si no se especifica). Por ejemplo: ``` html
          ``` -- `resetSliders`: (por defecto `false`). [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina cuando reiniciar el carrusel de diapositivas de la sección al salir de ella, de modo que muestre la primera diapositiva cuando se vuelva a dicha sección. +### resetSliders +(por defecto `false`). [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina cuando reiniciar el carrusel de diapositivas de la sección al salir de ella, de modo que muestre la primera diapositiva cuando se vuelva a dicha sección. -- `fadingEffect`: (por defecto `false`). [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina cuando usar el efecto de desvanecimiento (fading) en lugar del efecto de desplazamiento habitual de fullPage.js. Los posibles valores son `true`, `false` `sections`, `slides`. Puede por lo tanto, aplicarse únicamente vertical u horizontalmente o ambos al tiempo. +### fadingEffect +(por defecto `false`). [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina cuando usar el efecto de desvanecimiento (fading) en lugar del efecto de desplazamiento habitual de fullPage.js. Los posibles valores son `true`, `false` `sections`, `slides`. Puede por lo tanto, aplicarse únicamente vertical u horizontalmente o ambos al tiempo. -- `animateAnchor`: (por defecto `true`) Determina si al cargar la página usando un enlace de anclaje (#) ésta se desplazará a la sección de destino o si por el contrario cargará la página directamente en dicha sección. +### animateAnchor +(por defecto `true`) Determina si al cargar la página usando un enlace de anclaje (#) ésta se desplazará a la sección de destino o si por el contrario cargará la página directamente en dicha sección. -- `recordHistory`: (por defecto `true`) Determina si el estado de la página se guardará en la historia del navegador. Cuando se define la opción a `true` cada sección/diapositiva de la página actuará como una nueva página y el botón de "página anterior" o "página siguiente" del navegador desplazará las secciones/diapositivas de la página hasta alcanzar el estado de la página anterior o siguiente respectivamente. Cuando se define la opción a `false`, la URL seguirá cambiando con los enlaces de anclaje correspondientes pero no tendrán ningún efecto en la historia del navegador. Esta opción está automáticamente definida como `false` cuando se usa la opción `autoScrolling:false`. +### recordHistory +(por defecto `true`) Determina si el estado de la página se guardará en la historia del navegador. Cuando se define la opción a `true` cada sección/diapositiva de la página actuará como una nueva página y el botón de "página anterior" o "página siguiente" del navegador desplazará las secciones/diapositivas de la página hasta alcanzar el estado de la página anterior o siguiente respectivamente. Cuando se define la opción a `false`, la URL seguirá cambiando con los enlaces de anclaje correspondientes pero no tendrán ningún efecto en la historia del navegador. Esta opción está automáticamente definida como `false` cuando se usa la opción `autoScrolling:false`. -- `menu`: (por defecto `false`) Se puede usar un selector para especificar el menú de la página al que las secciones hacen referencia. De este modo, el desplazamiento vertical entre las secciones activará el elemento correspondiente del menú usando la clase `active`. +### menu +(por defecto `false`) Se puede usar un selector para especificar el menú de la página al que las secciones hacen referencia. De este modo, el desplazamiento vertical entre las secciones activará el elemento correspondiente del menú usando la clase `active`. Esta opción no generará ningún menú, sino que simplemente añade la clase `active` al elemento del menú con el enlace de anclaje correspondiente a la sección. Para relacionar los elementos del menú con las secciones se requiere del uso del atributo `data-menuanchor` que tendrá que tener el mismo valor que el enlace de anclaje que la sección a la que haga referencia. Por ejemplo: - ```html - - ``` - ```javascript - new fullpage('#fullpage', { - anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], - menu: '#myMenu' - }); - ``` +```html + +``` +```javascript +new fullpage('#fullpage', { + anchors: ['firstPage', 'secondPage', 'thirdPage', 'fourthPage', 'lastPage'], + menu: '#myMenu' +}); +``` - **Nota:** el menú tiene que estar situado fuera del contenedor de fullpage para evitar problemas cuando se use `css3:true`. De lo contrario, el menú será automáticamente movido fuera de la estructura de fullPage.js y añadido en el `body`. +**Nota:** el menú tiene que estar situado fuera del contenedor de fullpage para evitar problemas cuando se use `css3:true`. De lo contrario, el menú será automáticamente movido fuera de la estructura de fullPage.js y añadido en el `body`. -- `navigation`: (por defecto `false`) Si se define a `true`, se mostrará una navegación lateral de círculos haciendo referencia a las secciones de la página. +### navigation +(por defecto `false`) Si se define a `true`, se mostrará una navegación lateral de círculos haciendo referencia a las secciones de la página. -- `navigationPosition`: (por defecto `none`) Puede ser definido a `left` o `right` y determina la posición que tomará la navegación (si es que se usa). +### navigationPosition +(por defecto `none`) Puede ser definido a `left` o `right` y determina la posición que tomará la navegación (si es que se usa). -- `navigationTooltips`: (por defecto `[]`) Determina el texto para usar en cada círculo de la navegación. Por ejemplo: `navigationTooltips: ['firstSlide', 'secondSlide']`. También puedes definir dichos textos usando el atributo `data-tooltip` en cada sección si así lo prefieres. +### navigationTooltips +(por defecto `[]`) Determina el texto para usar en cada círculo de la navegación. Por ejemplo: `navigationTooltips: ['firstSlide', 'secondSlide']`. También puedes definir dichos textos usando el atributo `data-tooltip` en cada sección si así lo prefieres. -- `showActiveTooltip`: (por defecto `false`) Determina si mostrar siempre visible el texto para el círculo de la navegación que se encuentre activo en ese momento. +### showActiveTooltip +(por defecto `false`) Determina si mostrar siempre visible el texto para el círculo de la navegación que se encuentre activo en ese momento. -- `slidesNavigation`: (por defecto `false`) Si se define a `true` mostrará la navegación para las diapositivas horizontales de la página. +### slidesNavigation +(por defecto `false`) Si se define a `true` mostrará la navegación para las diapositivas horizontales de la página. -- `slidesNavPosition`: (por defecto `bottom`) Determina la posición que tomará la navegación para las diapositivas horizontales de la página. Admite los valores `top` y `bottom`. Tal vez quieras modificar la distancia inferior o superior usando estilos CSS así como el color de los mismos. +### slidesNavPosition +(por defecto `bottom`) Determina la posición que tomará la navegación para las diapositivas horizontales de la página. Admite los valores `top` y `bottom`. Tal vez quieras modificar la distancia inferior o superior usando estilos CSS así como el color de los mismos. -- `scrollOverflow`: (por defecto `true`) Determina si crear o no una barra de desplazamiento para las secciones/diapositivas donde el contenido de las mismas sea mayor que la altura de la ventana del navegador. Requiere la opciión por defecto `scrollBar:false`. Para evitar que fullPage.js cree la barra de desplazamiento en ciertas secciones o diapositivas, haz uso de la clase `fp-noscroll`. Por ejemplo: `
          `. Puedes evitar que `scrolloverflow` se aplique en modo responsive si usas la clase `fp-auto-height-responsive` en la sección. [Más información](https://github.com/alvarotrigo/fullPage.js#responsive-auto-height-sections). +### scrollOverflow +(por defecto `true`) Determina si crear o no una barra de desplazamiento para las secciones/diapositivas donde el contenido de las mismas sea mayor que la altura de la ventana del navegador. Requiere la opciión por defecto `scrollBar:false`. Para evitar que fullPage.js cree la barra de desplazamiento en ciertas secciones o diapositivas, haz uso de la clase `fp-noscroll`. Por ejemplo: `
          `. Puedes evitar que `scrolloverflow` se aplique en modo responsive si usas la clase `fp-auto-height-responsive` en la sección. [Más información](https://github.com/alvarotrigo/fullPage.js#responsive-auto-height-sections). -- `scrollOverflowMacStyle`: (default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) +### scrollOverflowMacStyle +(default `false`). When active, this option will use a "mac style" for the scrollbar instead of the default one, which will look quite different in Windows computers. (translation needed) -- `scrollOverflowReset`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Cuando se define a `true` fullPage.js moverá el contenido de la seccion o diapositiva hacia arriba cuando se abandone la seccion o diapositiva hacia otra sección vertical. De este modo, cuando se llega a una sección que usa barra de desplazamiento, se mostrará siempre el principio de su contenido. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. +### scrollOverflowReset +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Cuando se define a `true` fullPage.js moverá el contenido de la seccion o diapositiva hacia arriba cuando se abandone la seccion o diapositiva hacia otra sección vertical. De este modo, cuando se llega a una sección que usa barra de desplazamiento, se mostrará siempre el principio de su contenido. Possible values are `true`, `false`, `sections`, `slides`.Adding the class `fp-no-scrollOverflowReset` on the section or slide will disable this feature for that specific panel. -- `sectionSelector`: (por defecto `.section`) Determina el selector Javascript que fullPage.js usará para determinar lo que es una sección. Puede que necesites cambiarlo para evitar problemas con otras librerías que usen el mismo selector que usa fullPage.js por defecto. +### sectionSelector +(por defecto `.section`) Determina el selector Javascript que fullPage.js usará para determinar lo que es una sección. Puede que necesites cambiarlo para evitar problemas con otras librerías que usen el mismo selector que usa fullPage.js por defecto. -- `slideSelector`: (por defecto `.slide`) Determina el selector de Javascript que fullPage.js usará para determinar lo que es una diapositiva. Puede que necesites cambiarlo para evitar problemas con otras librerías que usen el mismo selector que usa fulPage.js por defecto. +### slideSelector +(por defecto `.slide`) Determina el selector de Javascript que fullPage.js usará para determinar lo que es una diapositiva. Puede que necesites cambiarlo para evitar problemas con otras librerías que usen el mismo selector que usa fulPage.js por defecto. -- `responsiveWidth`: (por defecto `0`) Usará el desplazamiento por defecto de cualquier otra página cuando la ventana tenga un valor de `anchor` menor que el definido en esta opción. La clase `fp-resposive` será añadida al elemento `body` de página en caso de que quieras usar dicho selector en tu hoja de estilos CSS para determinar cuando fullpage.js ha entrado en modo responsive. Por ejemplo, si se define como `900`, cuando la ventana del navegador sea menor que 900 píxeles el desplazamiento de fullpage.js actuará como en una página normal. +### responsiveWidth +(por defecto `0`) Usará el desplazamiento por defecto de cualquier otra página cuando la ventana tenga un valor de `anchor` menor que el definido en esta opción. La clase `fp-resposive` será añadida al elemento `body` de página en caso de que quieras usar dicho selector en tu hoja de estilos CSS para determinar cuando fullpage.js ha entrado en modo responsive. Por ejemplo, si se define como `900`, cuando la ventana del navegador sea menor que 900 píxeles el desplazamiento de fullpage.js actuará como en una página normal. -- `responsiveHeight`: (por defecto `0`) Usará el desplazamiento por defecto de cualquier otra página cuando la ventana tenga un valor de altura menor que el definido en esta opción. La clase `fp-resposive` será añadida al elemento `body` de página en caso de que quieras usar dicho selector en tu hoja de estilos CSS para determinar cuando fullpage.js ha entrado en modo responsive. Por ejemplo, si se define como `900`, cuando la ventana del navegador sea menor que 900 píxeles, el desplazamiento de fullpage.js actuará como en una página normal. +### responsiveHeight +(por defecto `0`) Usará el desplazamiento por defecto de cualquier otra página cuando la ventana tenga un valor de altura menor que el definido en esta opción. La clase `fp-resposive` será añadida al elemento `body` de página en caso de que quieras usar dicho selector en tu hoja de estilos CSS para determinar cuando fullpage.js ha entrado en modo responsive. Por ejemplo, si se define como `900`, cuando la ventana del navegador sea menor que 900 píxeles, el desplazamiento de fullpage.js actuará como en una página normal. -- `responsiveSlides`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Cuando se define a `true` las diapositivas horizontales se convertirán en secciones verticales cuando el modo responsive se active (haciendo uso de las opciones `responsiveWith` o `responsiveHeight` detalladas arriba). +### responsiveSlides +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Cuando se define a `true` las diapositivas horizontales se convertirán en secciones verticales cuando el modo responsive se active (haciendo uso de las opciones `responsiveWith` o `responsiveHeight` detalladas arriba). -- `parallax`: (por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si usar fondos de sección y diapositiva con efecto parallax o no. [Lee más acerca de la opción parallax aquí](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/spanish/parallax-extension.md). +### parallax +(por defecto `false`) [Extensión de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si usar fondos de sección y diapositiva con efecto parallax o no. [Lee más acerca de la opción parallax aquí](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/spanish/parallax-extension.md). -- `parallaxOptions`: (por defecto: `{ type: 'reveal', percentage: 62, property: 'translate'}`). Permite configurar los parámetros para el efecto de parallax cuando se usa la opción `parallax:true`. [Lee más acerca de la opción parallax aquí](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/spanish/parallax-extension.md). +### parallaxOptions +(por defecto: `{ type: 'reveal', percentage: 62, property: 'translate'}`). +Permite configurar los parámetros para el efecto de parallax cuando se usa la opción `parallax:true`. [Lee más acerca de la opción parallax aquí](https://github.com/alvarotrigo/fullPage.js/blob/master/lang/spanish/parallax-extension.md). -- `dropEffect` (default `false`) [Extensión de fullpage.jss](https://alvarotrigo.com/fullPage/extensions/). Determinar si usar el efecto "drop" para secciones y slides. [Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffect +(default `false`) [Extensión de fullpage.jss](https://alvarotrigo.com/fullPage/extensions/). Determinar si usar el efecto "drop" para secciones y slides. [Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `dropEffectOptions`: (default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). Permite configurar los parámetros para el efecto drop cuando se usa la option `dropEffect:true`.[Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). +### dropEffectOptions +(default: `{ speed: 2300, color: '#F82F4D', zIndex: 9999}`). +Permite configurar los parámetros para el efecto drop cuando se usa la option `dropEffect:true`.[Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Drop-Effect). -- `waterEffect` (default `false`) [Extensión de fullpage.jss](https://alvarotrigo.com/fullPage/extensions/). Determinar si usar el efecto "Water" (agua) para secciones y slides. [Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffect +(default `false`) [Extensión de fullpage.jss](https://alvarotrigo.com/fullPage/extensions/). Determinar si usar el efecto "Water" (agua) para secciones y slides. [Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `waterEffectOptions`: (default: `{ animateContent: true, animateOnMouseMove: true}`). Permite configurar los parámetros para el efecto "Water" (agua) cuando se usa la option `waterEffect:true`.[Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). +### waterEffectOptions +(default: `{ animateContent: true, animateOnMouseMove: true}`). +Permite configurar los parámetros para el efecto "Water" (agua) cuando se usa la option `waterEffect:true`.[Lee más acerca de la opción de dropEffect aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Water-Effect). -- `cards`: (default `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si usar el efecto de "Cards" en secciones/diapositivas. [Lee más acerca de la opción cards aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cards +(default `false`) [Extension de fullpage.js](https://alvarotrigo.com/fullPage/extensions/). Determina si usar el efecto de "Cards" en secciones/diapositivas. [Lee más acerca de la opción cards aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `cardsOptions`: (default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). Permite configurar los parámetros para el efecto de Cards cuando se usa la opcón `cards:true`. [Lee más acerca de la opción cards aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). +### cardsOptions +(default: `{ perspective: 100, fadeContent: true, fadeBackground: true}`). +Permite configurar los parámetros para el efecto de Cards cuando se usa la opcón `cards:true`. [Lee más acerca de la opción cards aquí](https://github.com/alvarotrigo/fullPage.js/wiki/Extension-Cards). -- `lazyLoading`: (por defecto `true`) La carga pasiva está activa por defecto, lo que significa que cargará pasivamente cualquier elemento multimedia que contenga el atributo `data-src` como se detalla en la [carga pasiva de elementos multimedia](https://github.com/alvarotrigo/fullPage.js/blob/master/README_SPANISH.md#carga-pasiva-de-elementos-multimedia). Si quieres usar otra librería de carga pasiva puedes deshabilitar esta funcionalidad usando `false`. +### lazyLoading +(por defecto `true`) La carga pasiva está activa por defecto, lo que significa que cargará pasivamente cualquier elemento multimedia que contenga el atributo `data-src` como se detalla en la [carga pasiva de elementos multimedia](https://github.com/alvarotrigo/fullPage.js/blob/master/README_SPANISH.md#carga-pasiva-de-elementos-multimedia). Si quieres usar otra librería de carga pasiva puedes deshabilitar esta funcionalidad usando `false`. -- `observer`: (default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) +### observer +(default `true`) Defines whether or not to observe changes in the HTML structure of the page. When enabled, fullPage.js will automatically react to those changes and update itself accordingly. Ideal when adding, removing or hidding sections or slides. (translation needed) -- `credits`. (default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) +### credits +(default `{enabled: true, label: 'Made with fullpage.js', position: 'right'}`). +Defines whether to use fullPage.js credits. As per clause 0, 4, 5 and 7 of the GPLv3 licecense, those using fullPage.js under the GPLv3 are required to give prominent notice that fullPage.js is in use. We recommend including attribution by keeping this option enabled. (translation needed) ## Métodos Puedes verlos en acción [aquí](https://alvarotrigo.com/fullPage/examples/methods.html) @@ -1062,13 +1128,10 @@ Sólo disponible en inglés :) ![Ubisoft](http://wallpapers-for-ipad.com/fullpage/imgs3/logos/ubisoft-5.png) - http://www.bbc.co.uk/news/resources/idt-d88680d1-26f2-4863-be95-83298fd01e02 -- http://www.shootinggalleryasia.com/ - http://medoff.ua/en/ - http://promo.prestigio.com/grace1/ - http://torchbrowser.com/ -- http://charlotteaimes.com/ - http://www.boxreload.com/ -- http://usescribe.com/ - http://boxx.hk/ - http://www.villareginateodolinda.it @@ -1090,4 +1153,10 @@ Conviértete en un sponsor y añade tu logo aquí en Github y en la página prin ### People + + +## Contributors + + + \ No newline at end of file diff --git a/package.json b/package.json index d1679d672..49ea25c78 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "fullpage.js", - "version": "4.0.22", + "version": "4.0.23", "description": "Create beautiful fullscreen snap scrolling websites", "main": "dist/fullpage.js", "scripts": { diff --git a/rollup.config.js b/rollup.config.js index edc1dbb45..b0e8c833b 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -3,7 +3,7 @@ import resolve from "@rollup/plugin-node-resolve"; import babel from "@rollup/plugin-babel"; const licenseContent = `/*! -* fullPage 4.0.22 +* fullPage 4.0.23 * https://github.com/alvarotrigo/fullPage.js * * @license GPLv3 for open source use only diff --git a/src/css/fullpage.css b/src/css/fullpage.css index 53ee6f6bb..3115cb06a 100644 --- a/src/css/fullpage.css +++ b/src/css/fullpage.css @@ -1,5 +1,5 @@ /*! - * fullPage 4.0.22 + * fullPage 4.0.23 * https://github.com/alvarotrigo/fullPage.js * * @license GPLv3 for open source use only @@ -255,7 +255,8 @@ html.fp-enabled, } .fp-responsive .fp-auto-height-responsive.fp-section, -.fp-responsive .fp-auto-height-responsive .fp-slide{ +.fp-responsive .fp-auto-height-responsive .fp-slide, +.fp-responsive .fp-auto-height-responsive .fp-overflow{ height: auto !important; min-height: auto !important; } diff --git a/src/js/fullpage.js b/src/js/fullpage.js index 0598a72d9..f3cd2eb90 100644 --- a/src/js/fullpage.js +++ b/src/js/fullpage.js @@ -61,7 +61,7 @@ function setAPI(){ }; //public functions - FP.version = '4.0.22'; + FP.version = '4.0.23'; FP.test = Object.assign(FP.test, { top: '0px', diff --git a/src/js/keyboard/setKeyboardScrolling.js b/src/js/keyboard/setKeyboardScrolling.js index 98fd70396..c2f43c33c 100644 --- a/src/js/keyboard/setKeyboardScrolling.js +++ b/src/js/keyboard/setKeyboardScrolling.js @@ -2,9 +2,17 @@ import { getOptions } from '../common/options'; import { FP } from '../common/constants.js'; import { setIsScrollAllowed } from '../common/isScrollAllowed.js'; +import { EventEmitter } from '../common/eventEmitter.js'; +import { events } from '../common/events.js'; + +EventEmitter.on(events.beforeInit, beforeInit); FP.setKeyboardScrolling = setKeyboardScrolling; +function beforeInit(){ + setKeyboardScrolling(true); +} + /** * Adds or remove the possibility of scrolling through sections by using the keyboard arrow keys */ diff --git a/src/js/menu/index.js b/src/js/menu/index.js index 46826f6b8..5ec229e87 100644 --- a/src/js/menu/index.js +++ b/src/js/menu/index.js @@ -3,6 +3,7 @@ import { getOptions } from '../common/options.js'; import { EventEmitter } from '../common/eventEmitter.js'; import { setState } from '../common/state.js'; import { events } from '../common/events.js'; +import { closest } from '../common/utils.js'; EventEmitter.on(events.bindEvents, bindEvents); @@ -14,7 +15,7 @@ function onClickOrTouch(params){ var target = params.target; if(utils.closest(target, getOptions().menu + ' [data-menuanchor]')){ - menuItemsHandler.call(target, params); + menuItemsHandler.call(target, params.e); } } @@ -26,9 +27,11 @@ function menuItemsHandler(e){ if(utils.$(getOptions().menu)[0] && (getOptions().lockAnchors || !getOptions().anchors.length)){ utils.preventDefault(e); + const menuAnchorEl = closest(this, '[data-menuanchor]'); + /*jshint validthis:true */ - EventEmitter.emit(events.onMenuClick, {anchor: - utils.getAttr(this, 'data-menuanchor') + EventEmitter.emit(events.onMenuClick, { + anchor: utils.getAttr(menuAnchorEl, 'data-menuanchor') }); } } diff --git a/src/js/mixed/index.min.js b/src/js/mixed/index.min.js index bb463c144..cd1997e29 100644 --- a/src/js/mixed/index.min.js +++ b/src/js/mixed/index.min.js @@ -1 +1 @@ -import{EventEmitter}from"../common/eventEmitter.js";import{events}from"../common/events.js";import{getOptions}from"../common/options.js";import{ACTIVE}from"../common/selectors.js";import{setState}from"../common/state.js";!function(){EventEmitter.on(events.onInitialise,(function(){var n,a,l;setState({isValid:(getOptions().licenseKey,n=getOptions().licenseKey,a=function(n){var e=parseInt("\x35\x31\x34").toString(16);if(!n||n.length<29||4===n.split(t[0]).length)return null;var r=["\x45\x61\x63\x68","\x66\x6f\x72"][i()]().join(""),a=n[["\x73\x70\x6c\x69\x74"]]("-"),l=[];a[r]((function(t,n){if(n<4){var r=function(t){var n=t[t.length-1],e=["\x4e\x61\x4e","\x69\x73"][i()]().join("");return window[e](n)?o(n):function(t){return t-ACTIVE.length}(n)}(t);l.push(r);var s=o(t[r]);if(1===n){var a=["\x70\x61","\x64\x53","\x74","\x61\x72\x74"].join("");s=s.toString()[a](2,"0")}e+=s,0!==n&&1!==n||(e+="-")}}));let m=0,f="";return n.split("-").forEach((function(t,n){if(n<4){let i=0;for(var e=0;e<4;e++)e!==l[n]&&(i+=Math.abs(o(t[e])),isNaN(t[e])||m++);var r=s(i);f+=r}})),f+=s(m),{v:new Date(e+"T00:00"),o:e.split("-")[2]===8*(ACTIVE.length-2)+"",l:f}}(n),l=function(t){var n=r[i()]().join("");return t&&0===n.indexOf(t)&&t.length===n.length}(n),(a||l)&&(a&&e<=a.v&&a.l===n.split(t[0])[4]||l||a.o)||!1)})}));var t=["-"];const n="\x32\x30\x32\x34\x2d\x30\x2d\x33\x31".split("-"),e=new Date(n[0],n[1],n[2]),r=["se","licen","-","v3","l","gp"];function i(){return[["\x72\x65","\x76\x65\x72\x73\x65"].join("")]["".length]}function o(t){return t?isNaN(t)?t.charCodeAt(0)-72:t:""}function s(t){let n=72+t;return n>90&&n<97&&(n+=15),String.fromCharCode(n).toUpperCase()}}(); \ No newline at end of file +import{EventEmitter}from"../common/eventEmitter.js";import{events}from"../common/events.js";import{getOptions}from"../common/options.js";import{ACTIVE}from"../common/selectors.js";import{setState}from"../common/state.js";!function(){EventEmitter.on(events.onInitialise,(function(){var n,a,l;setState({isValid:(getOptions().licenseKey,n=getOptions().licenseKey,a=function(n){var e=parseInt("\x35\x31\x34").toString(16);if(!n||n.length<29||4===n.split(t[0]).length)return null;var r=["\x45\x61\x63\x68","\x66\x6f\x72"][i()]().join(""),a=n[["\x73\x70\x6c\x69\x74"]]("-"),l=[];a[r]((function(t,n){if(n<4){var r=function(t){var n=t[t.length-1],e=["\x4e\x61\x4e","\x69\x73"][i()]().join("");return window[e](n)?o(n):function(t){return t-ACTIVE.length}(n)}(t);l.push(r);var s=o(t[r]);if(1===n){var a=["\x70\x61","\x64\x53","\x74","\x61\x72\x74"].join("");s=s.toString()[a](2,"0")}e+=s,0!==n&&1!==n||(e+="-")}}));let m=0,f="";return n.split("-").forEach((function(t,n){if(n<4){let i=0;for(var e=0;e<4;e++)e!==l[n]&&(i+=Math.abs(o(t[e])),isNaN(t[e])||m++);var r=s(i);f+=r}})),f+=s(m),{v:new Date(e+"T00:00"),o:e.split("-")[2]===8*(ACTIVE.length-2)+"",l:f}}(n),l=function(t){var n=r[i()]().join("");return t&&0===n.indexOf(t)&&t.length===n.length}(n),(a||l)&&(a&&e<=a.v&&a.l===n.split(t[0])[4]||l||a.o)||!1)})}));var t=["-"];const n="\x32\x30\x32\x34\x2d\x35\x2d\x32\x30".split("-"),e=new Date(n[0],n[1],n[2]),r=["se","licen","-","v3","l","gp"];function i(){return[["\x72\x65","\x76\x65\x72\x73\x65"].join("")]["".length]}function o(t){return t?isNaN(t)?t.charCodeAt(0)-72:t:""}function s(t){let n=72+t;return n>90&&n<97&&(n+=15),String.fromCharCode(n).toUpperCase()}}(); \ No newline at end of file diff --git a/src/js/mouse/wheel.js b/src/js/mouse/wheel.js index c71e193ec..c6996ac0c 100644 --- a/src/js/mouse/wheel.js +++ b/src/js/mouse/wheel.js @@ -151,9 +151,8 @@ function MouseWheelHandler(e) { scrollings.push(Math.abs(value)); //preventing to scroll the site on mouse wheel when scrollbar is present - if(getOptions().scrollBar){ - utils.preventDefault(e); - } + //and preventing scroll of parent frames + utils.preventDefault(e); //time difference between the last scroll and the current one var timeDiff = curTime-prevTime; diff --git a/src/js/scrolloverflow.js b/src/js/scrolloverflow.js index ab7a899f8..11fd2064e 100644 --- a/src/js/scrolloverflow.js +++ b/src/js/scrolloverflow.js @@ -124,7 +124,7 @@ export const scrollOverflowHandler = { // Forcing the focus on the next paint // to avoid issue #4484 & #4493 on Safari requestAnimationFrame(function(){ - scrollableItem.focus(); + scrollableItem.focus({preventScroll: true}); scrollOverflowHandler.isInnerScrollAllowed = true; }); } diff --git a/src/js/sections.js b/src/js/sections.js index 189017ac1..9a2ada7be 100644 --- a/src/js/sections.js +++ b/src/js/sections.js @@ -25,6 +25,9 @@ export function styleSection(section){ if(!getState().activeSection && section.isVisible) { utils.addClass(sectionElem, ACTIVE); updateState(); + } + + if(!startingSection && section.isVisible){ startingSection = getState().activeSection.item; }