Giter Site home page Giter Site logo

vasekch / ng-pageslide Goto Github PK

View Code? Open in Web Editor NEW

This project forked from danielepiccone/ng-pageslide

0.0 1.0 1.0 584 KB

AngularJS sliding panel for serving additional content from off the page

Home Page: http://dpiccone.github.io/ng-pageslide/examples/

JavaScript 100.00%

ng-pageslide's Introduction

AngularJS Pageslide directive

An AngularJS directive which slides another panel over your browser to reveal an additional interaction pane.

It does all the css manipulation needed to position your content off canvas with html attibutes and it does not depend on jQuery

See it in action HERE

Examples in the repository.

Build Status

Usage

Add this in your head

<script src="dist/angular-pageslide-directive.min.js"></script>

Use within your Angular app

var app = angular.module("app", ["pageslide-directive"]);

Just use the <pageslide> element or attribute inside a controller scope like this:

please note that you need an outer controller to define the scope of your checked model

also you need an inner <div> to wrap your content in

<div ... ng-controller="yourCtrl">
    ...
    <pageslide ps-open="checked">
        <div>
            <p>some random content...</p>
        </div>
    </pageslide>
    ...
</div>

Options:

pageslide (required)

// Configuration
ps-side (optional) = Where the panel should appear (right,left,top,bottom), if empty defaults to "right"

// Interaction
ps-open (optional) = Boolean true/false used to open and close the panel (optional)
ps-auto-close (optional) = true if you want the panel to close on location change
ps-key-listener (optional) = close the sidebar with the ESC key (defaults to false)

// Style
ps-class (optional) = The class for the pageslide (default: "ng-pageslide")
ps-speed (optional) = The speed of the transition (optional)
ps-size (optional) = desired height/width of panel (defaults to 300px)
ps-zindex (optional) = desired z-index (defaults to 1000)

// Effects
ps-push (optional) = push the main body to show the panel (defaults to false)*
ps-squeeze (optional) = squeeze body to fit the panel (defaults to false)*
* these options make assumptions about the layout, will set body positioning to absolute

ps-custom-height (optional) = custom CSS for panel height (only applicable in 'right' or 'left' panels)
ps-custom-top (optional) = custom CSS for panel top (only applicable in 'right', 'left' or 'top' panels)
ps-custom-bottom (optional) = custom CSS for panel bottom (only applicable in 'right', 'left' or 'bottom' panels)
ps-custom-left (optional) = custom CSS for panel left (only applicable in 'left', 'top' or 'bottom' panels)
ps-custom-right (optional) = custom CSS for panel right (only applicable in 'right', 'top' or 'bottom' panels)
ps-container (optional) = custom CSS ID selector to which the slider div appends (e.g: <div id='myDiv'/> -> ps-container="myDiv")
ps-body-class (optional) = if true adds a class on the container body reflecting the state of the pageslide

Changelog

Version 1.1.0

  • Removed ps-cloak, default behavior is to hide the content until the animation is over
  • Added ps-container, specifies the pageslide container id if not body
  • Added ps-push, pushes the body outside of the viewport when the panel slides in

Version 1.0.0

  • The directive is AEC and it works only for block elements
  • Removed ps-target and href= for opening the pageslide
  • Added ps-cloak and ps-squeeze

Licensing

Licensed under MIT

Author

2013, Daniele Piccone www.danielepiccone.com

ng-pageslide's People

Contributors

abenrob avatar danielepiccone avatar dfsq avatar gabehayes avatar httpete-ire avatar island205 avatar jedibatman avatar jlebrech avatar ma-zal avatar mintyorb avatar purplefish32 avatar tmcgee123 avatar vasekch avatar wenjiechen avatar

Watchers

 avatar

Forkers

ma-zal

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.