An AngularJS service and a directive to quickly use the HTML5 fullscreen API
npm install @kariudo/angular-fullscreenAngularJS HTML5 Fullscreen
=======
An AngularJS service and a directive to quickly use the HTML5 fullscreen API and set the fullscreen to the document or to a specific element.
html
`
Set FBAngular as a dependency in your module:
`javascript
var app = angular.module('YourApp', ['FBAngular'])
`
Fullscreen Directive
Set the fullscreen attribute to a specific element:
`html
`
The only requirement is to set a different ID to all elements that you will flag as fullscreen.
Fullscreen Service
You can also use the Fullscreen service into your controller:
Controller:
`javascript
function MainCtrl($scope, Fullscreen) {
$scope.goFullscreen = function () {
if (Fullscreen.isEnabled())
Fullscreen.cancel();
else
Fullscreen.all();
// Set Fullscreen to a specific element (bad practice)
// Fullscreen.enable( document.getElementById('img') )
}
}
`
HTML:
`html
`
Alternative Approach
You may pass in the name of a scope property to watch. When the property
becomes truthy, the element will become full screen:
Controller:
`javascript
function MainCtrl($scope) {
// Initially, do not go into full screen
$scope.isFullscreen = false;
$scope.toggleFullScreen = function() {
$scope.isFullscreen = !$scope.isFullscreen;
}
}
`
HTML:
`html
Lorem ipsum...
`
If you want to disable the click fullscreen trigger for this alternative approach, add the attribute only-watched-property to the fullscreen directive, like this:
`html
Lorem ipsum...
``