NgEasyModal
How do I make an ngeasymodal?
A simple directive/delegator for show, get and hide modals in AngularJS. What is a ngeasymodal? How do you make a ngeasymodal? This script and codes were developed by Lorenzo D'Ianni on 29 September 2022, Thursday.
NgEasyModal - Script Codes HTML Codes
<!DOCTYPE html>
<html >
<head> <meta charset="UTF-8"> <title>ngEasyModal</title> <link rel='stylesheet prefetch' href='https://rawgit.com/lorenzodianni/ng-easy-modal/master/demo/demo.css'>
</head>
<body> <!-- include ng-easy-modal.css -->
<link rel="stylesheet" href="https://rawgit.com/lorenzodianni/ng-easy-modal/master/dist/css/ng-easy-modal.css" />
<div ng-app="MyApp" ng-controller="MainCtrl as main"> <section class="info"> <h1> <span>ng</span><span>Easy</span><span>Modal</span> <small>A simple directive/delegator for show, get and hide modals.</small> </h1> <div class="info-current">Last choise<div class="value choise">{{main.currentAction}}</div></div> <div class="info-current">Current status<div class="value">{{main.easyModal.get('status') || 'null'}}</div></div> <div class="info-current">Current title<div class="value">{{main.easyModal.get('title') || 'null'}}</div></div> <div class="info-current">Current body<div class="value">{{main.easyModal.get('body') || 'null'}}</div></div> <div class="info-current">Current buttons<div class="value">{{main.easyModal.get('buttons') || 'null'}}</div></div> <div class="info-current">Current clickOut<div class="value">{{main.easyModal.get('clickOut') || 'false'}}</div></div> </section> <section class="examples"> <div class="example"> <h2>Classic</h2> <button class="button" ng-click="main.easyModal.show(main.classicOne)">One</button> <button class="button" ng-click="main.easyModal.show(main.classicTwo)">Two</button> <button class="button" ng-click="main.easyModal.show(main.classicThree)">Three</button> </div> <div class="example"> <h2>Click Out</h2> <button class="button" ng-click="main.easyModal.show(main.clickOutOne)">One</button> <button class="button" ng-click="main.easyModal.show(main.clickOutTwo)">Two</button> <button class="button" ng-click="main.easyModal.show(main.clickOutThree)">Three</button> </div> <div class="example"> <h2>Transclude</h2> <button class="button" ng-click="main.easyModal.show(main.transcludeOne)">One</button> <button class="button" ng-click="main.easyModal.show(main.transcludeTwo)">Two</button> <button class="button" ng-click="main.easyModal.show(main.transcludeThree)">Three</button> </div> </section> <easy-modal ng-if="main.easyModal.status('classic')"> </easy-modal> <easy-modal ng-if="main.easyModal.status('clickOut')"> </easy-modal> <easy-modal ng-cloak ng-if="main.easyModal.status('transclude')"> <div><br>My content comes from the page and not from directive or controller</div> </easy-modal> <easy-modal reset-template="true" ng-if="main.easyModal.status('overAll')"> <div> <div>I'm an overAll modal and my template was reset!</div> <br> <button ng-click="main.easyModal.show({status: 'newOneMore', title: 'New One More title', body: 'New One More text'})">open new one more</button> </div> </easy-modal> <easy-modal ng-if="main.easyModal.status('newOneMore')"> </easy-modal>
</div>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular-animate.min.js"></script>
<!-- include ng-easy-modal.js -->
<script src="https://rawgit.com/lorenzodianni/ng-easy-modal/master/dist/ng-easy-modal.js"></script>
<a href="https://github.com/lorenzodianni/ng-easy-modal" target="blank" class="github-corner"><svg width="80" height="80" viewBox="0 0 250 250" style="fill:#151513; color:#fff; position: fixed; top: 0; border: 0; right: 0;"><path d="M0,0 L115,115 L130,115 L142,142 L250,250 L250,0 Z"></path><path d="M128.3,109.0 C113.8,99.7 119.0,89.6 119.0,89.6 C122.0,82.7 120.5,78.6 120.5,78.6 C119.2,72.0 123.4,76.3 123.4,76.3 C127.3,80.9 125.5,87.3 125.5,87.3 C122.9,97.6 130.6,101.9 134.4,103.2" fill="currentColor" style="transform-origin: 130px 106px;" class="octo-arm"></path><path d="M115.0,115.0 C114.9,115.1 118.7,116.5 119.8,115.4 L133.7,101.6 C136.9,99.2 139.9,98.4 142.2,98.6 C133.8,88.0 127.5,74.4 143.8,58.0 C148.5,53.4 154.0,51.2 159.7,51.0 C160.3,49.4 163.2,43.6 171.4,40.1 C171.4,40.1 176.1,42.5 178.8,56.2 C183.1,58.6 187.2,61.8 190.9,65.4 C194.5,69.0 197.7,73.2 200.1,77.6 C213.8,80.2 216.3,84.9 216.3,84.9 C212.7,93.1 206.9,96.0 205.4,96.6 C205.1,102.4 203.0,107.8 198.3,112.5 C181.9,128.9 168.3,122.5 157.7,114.1 C157.9,116.9 156.7,120.9 152.7,124.9 L141.0,136.5 C139.8,137.7 141.6,141.9 141.8,141.8 Z" fill="currentColor" class="octo-body"></path></svg></a><style>.github-corner:hover .octo-arm{animation:octocat-wave 560ms ease-in-out}@keyframes octocat-wave{0%,100%{transform:rotate(0)}20%,60%{transform:rotate(-25deg)}40%,80%{transform:rotate(10deg)}}@media (max-width:500px){.github-corner:hover .octo-arm{animation:none}.github-corner .octo-arm{animation:octocat-wave 560ms ease-in-out}}</style> <script src="js/index.js"></script>
</body>
</html>
NgEasyModal - Script Codes JS Codes
'use strict';
angular.module('MyApp', ['ngEasyModal', 'ngAnimate']).controller('MainCtrl', function (EasyModalDelegate) { var main = this; main.easyModal = EasyModalDelegate; var examples = [{ status: 'Classic', labels: ['One', 'Two', 'Three'], clickOut: false }, { status: 'Click Out', labels: ['One', 'Two', 'Three'], clickOut: true }, { status: 'Transclude', labels: ['One', 'Two', 'Three'], clickOut: false }]; examples.forEach(function (example) { example.labels.forEach(function (label) { var key = toCamelCase(example.status) + label; var status = example.status; var clickOut = example.clickOut; main[key] = { status: toCamelCase(status), title: status + ' ' + label, body: 'I\'m a ' + status.toLowerCase() + ' ' + label.toLowerCase() + ' example body', buttons: [{ label: 'Disagree ' + status + ' ' + label, action: function action($event) { printInfo('Disagree ' + status + ' ' + label); EasyModalDelegate.close(); } }, { label: 'Agree ' + status + ' ' + label, action: function action($event) { printInfo('Agree ' + status + ' ' + label); EasyModalDelegate.close(); } }, { label: 'Open OverAll', action: function action($event) { printInfo('Open OverAll'); EasyModalDelegate.show({ status: 'overAll' }); } }], clickOut: clickOut, templateUrl: false }; }); }); function printInfo(info) { main.currentAction = info; } function toCamelCase(string) { return string.toLowerCase().replace(/\s(.)/g, function (letter) { return letter.toUpperCase(); }).replace(/\s/g, ''); }
});
Developer | Lorenzo D'Ianni |
Username | lorenzodianni |
Uploaded | September 29, 2022 |
Rating | 3 |
Size | 4,159 Kb |
Views | 18,216 |
Find the perfect freelance services for your business! Fiverr's mission is to change how the world works together. Fiverr connects businesses with freelancers offering digital services in 500+ categories. Find Developer!
Name | Size |
AngularJS - Controller As | 5,584 Kb |
Ng-circle | 3,355 Kb |
SidebarJS | 3,666 Kb |
Checkbox Style - SCSS | 5,095 Kb |
Smooth Scroll | 3,561 Kb |
Cards experience | 10,660 Kb |
Material Design - Button in pure CSS | 3,923 Kb |
Material Design - Animations | 9,001 Kb |
Material Design - Switch | 3,282 Kb |
Checkbox Style 2.0 - SCSS | 4,075 Kb |
Jasper is the AI Content Generator that helps you and your team break through creative blocks to create amazing, original content 10X faster. Discover all the ways the Jasper AI Content Platform can help streamline your creative workflows. Start For Free!
Name | Username | Size |
A Pen by Jason Kinney | Jason-kinney | 1,980 Kb |
LeMandinque | Aadesida | 9,046 Kb |
Spiralator 9000 | AdmiralPotato | 4,671 Kb |
Ocean | Gordonnl | 2,817 Kb |
JS Beispiel getElementsByClassName 3 | HSZG-Frontend-Kurs | 1,988 Kb |
Click Based Rotation Demo | Zeaklous | 2,086 Kb |
Google Chrome Icon using Pure CSS in one DIV | Grssam | 3,627 Kb |
Table Exercise | Fresco | 9,585 Kb |
Vanilla modal window | Jasonhowmans | 3,554 Kb |
Menu | Vivi_Lai | 1,210 Kb |
Surf anonymously, prevent hackers from acquiring your IP address, send anonymous email, and encrypt your Internet connection. High speed, ultra secure, and easy to use. Instant setup. Hide Your IP Now!