fullPage.js Angular Directive
Enhanced by BrowserStack
A simple fullPage.js directive that allows the use of fullPage.js within an angular app. There are several issues when using the vanilla jquery version with an angular application that uses an internal router for displaying pages, and this repo aims to solve them.
Install via Download,
Bower
bower install --save angular-fullpage.js
or NPM
npm install --save angular-fullpage.js
====
Make sure to include both this directive and fullPage.js. This package isn't a replacement.
index.html
<!-- Included dependancies:
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.4.5/angular.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js"></script>
<script src="vendor/fullpage.js/jquery.fullPage.min.js"></script>
-->
<script src="vendor/angular-fullpage.js/angular-fullpage.min.js"></script>
In your angular modules, include the Directive
app.module.js
angular
.module('app', [
'fullPage.js'
...
]);
Add your standard fullPage.js structure, along with the attribute full-page
someView.html
<div full-page>
<div class="section">Some section</div>
<div class="section">Some section</div>
<div class="section">Some section</div>
<div class="section">Some section</div>
</div>
If you'd like to add some options to the fullpage, just include them in an object in your controller, and add the options attribute to your html.
someView.html
function MainController(){
var _this = this;
_this.mainOptions = {
sectionsColor: ['#1bbc9b', '#4BBFC3', '#7BAABE'],
navigation: true,
navigationPosition: 'right',
scrollingSpeed: 1000
}
}
someView.html
<div full-page options="vm.someOptions">
<div class="section">Some section</div>
<div class="section">Some section</div>
<div class="section">Some section</div>
</div>