<!DOCTYPE html>
<html>

  <head>
    <meta charset="utf-8" />
    <title>AngularJS Plunker</title>
    <link href="//netdna.bootstrapcdn.com/bootstrap/3.0.3/css/bootstrap.min.css" rel="stylesheet" data-semver="3.0.3" data-require="bootstrap-css@*" />
    <script>document.write('<base href="' + document.location + '" />');</script>
    <script data-require="angular.js@1.2.x" src="http://code.angularjs.org/1.2.9/angular.js" data-semver="1.2.9"></script>
    <script data-require="ui-router@*" data-semver="0.2.8" src="http://angular-ui.github.io/ui-router/release/angular-ui-router.js"></script>
    <script data-require="angular-animate@*" data-semver="1.2.9" src="http://code.angularjs.org/1.2.9/angular-animate.js"></script>
    <style>
        .subview{
          outline: 1px solid #ccc;
        }
        .view-container{
            position:relative;
            border-top: 10px solid blue;
        }
        [ui-view]{
            min-height: 50px; 
            background-color: yellow;
            outline: 1px solid #ccc;
        }
        
        [ui-view].ng-enter, [ui-view].ng-leave{
            position: absolute;
            width: 100%;
            height: 100%;
            -webkit-transition:all 5s ease-in-out;
            -moz-transition:all 5s ease-in-out;
            -o-transition:all 5s ease-in-out;
            transition:all 5s ease-in-out;
        }
        
        [ui-view].ng-leave{
            left: 0;
        }
        [ui-view].ng-leave-active{
            left: -100%;
        }
        
        [ui-view].ng-enter{
            left: 100%;
        }
        
        [ui-view].ng-enter-active{
            left: 0;
        }
    </style>
  </head>

  <body ng-app="app">
      <div class="container">
        <nav class="navbar navbar-default" role="navigation">
          <div class="navbar-header">
            <a class="navbar-brand" href="#">Slider</a>
          </div>
          <ul class="nav navbar-nav">
            <li><a href="#/view1">view1</a></li>
            <li><a href="#/view2">view2</a></li>
          </ul>
      </div>
          <div class="view-container">
              <div ui-view></div>
          </div>
          
     <script>
         var app = angular.module('app', [
            'ui.router',
            'ngAnimate'
        ]).value('$anchorScroll', angular.noop);
        
        app.config(function($stateProvider, $urlRouterProvider, $uiViewScrollProvider) {
          $uiViewScrollProvider.useAnchorScroll()
            $stateProvider
                .state('view1', {
                    url:'/view1',
                    template:'<div class="container subview"><h4>view1</h4></div>'
                })
                .state('view2', {
                    url:'/view2',
                    template:'<div class="container subview"><h4>view2</h4></div>'
                });
            $urlRouterProvider.otherwise('/view1');
        });
        app.run();
     </script> 
  </body>

</html>
AngularJs, UI-Router and ngAnimate to create classic sliding view in mobile