Framework7 Starter

by Maiki Nahara

HTML

<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/framework7/2.0.6/css/framework7.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/framework7/2.0.6/js/framework7.min.js"></script>
<div id="app">
  <div class="panel panel-left panel-cover theme-dark">
    <div class="page"></div>
  </div>
  <div class="panel panel-right panel-reveal theme-dark">
    <div class="page"></div>
  </div>
  <div class="view view-main ios-edges">
    <div class="page" data-name="home">
      <div class="navbar">
        <div class="navbar-inner">
          <div class="left">
            <a href="#" class="link panel-open" data-panel="left">Left Panel</a>
          </div>
          <div class="title sliding">My App</div>
          <div class="right">
            <a href="#" class="link panel-open" data-panel="right">Right Panel</a>
          </div>
        </div>
      </div>
      <!-- Toolbar-->
      <div class="toolbar toolbar-bottom-md">
        <div class="toolbar-inner">
          <a href="#" class="link">Left Link</a>
          <a href="#" class="link">Right Link</a>
        </div>
      </div>
      <!-- Scrollable page content-->
      <div class="page-content">
        <!-- Slider container -->
        <div class="swiper-container">
          <!-- Slides wrapper -->
          <div class="swiper-wrapper">
            <!-- Slides -->
            <div class="swiper-slide" style='background: red'>Slide 1 - Click me to delete!</div>
            <div class="swiper-slide" style='background: green'>Slide 2 - Click me to delete!</div>
            <div class="swiper-slide" style='background: blue'>Slide 3 - Click me to delete!</div>
            <div class="swiper-slide" style='background: yellow'>Slide 4 - Click me to delete!</div>
            <div class="swiper-slide" style='background: orange'>Slide 5 - Click me to delete!</div>
            <div class="swiper-slide" style='background: gray'>Slide 6 - Click me to delete!</div>
          </div>
         ...

CSS

.swiper-container {
  width: 80%;
  height: 90%;
}

.fade-out {
    -webkit-transition: opacity 2s ease-in-out;
    -moz-transition: opacity 2s ease-in-out;
    -ms-transition: opacity 2s ease-in-out;
    -o-transition: opacity 2s ease-in-out;
     opacity: 0;
}

JavaScript

var app = new Framework7({
  root: '#app',
  theme: 'auto',
  routes: [{
    path: '/about/',
    content: `
      	<div class="page">
          <div class="navbar">
            <div class="navbar-inner sliding">
            	<div class="left">
                <a href="#" class="link back">
                  <i class="icon icon-back"></i>
                  <span class="ios-only">Back</span>
                </a>
              </div>
              <div class="title">About</div>
            </div>
          </div>
          <div class="page-content">
            <div class="block block-strong">About page</div>
          </div>
        </div>
      `
  }]
});

var viewMain = app.views.create('.view-main');

var swiper = app.swiper.create('.swiper-container', {
  speed: 400,
  spaceBetween: 100,
  pagination: {
    el: '.swiper-pagination',
    type: 'bullets',
  },
});

swiper.on('click', function(e, s) {
  var el = e.target || e.currentTarget
  var self = this
  el.classList.add('fade-out')
  setTimeout(function(){
  self.update()
	el.remove()
	},1500)
})