Framework7 Starter
by Maiki Nahara
HTML
<script src="https://unpkg.com/[email protected]/js/framework7.js"></script>
<link rel="stylesheet" href="https://unpkg.com/[email protected]/css/framework7.css">
<div id="app">
<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">
<div class="block block-strong">
<p>Here is your blank Framework7 app.</p>
</div>
<div class="block-title">Navigation</div>
<div class="list links-list">
<ul>
<li><a href="/about/">About</a></li>
</ul>
</div>
</div>
</div>
</div>
</div>
JavaScript
var app = new Framework7({
root: '#app',
theme: 'auto',
methods: {
createLeftPanel() {
var _app = document.getElementById('app')
var myDivPanel = document.createElement('div')
myDivPanel.classList.add('panel', 'panel-left', 'panel-cover', 'theme-dark')
myDivPanel.innerHTML = `<div class='page'><div class="content-block">
<div class="list">
<ul>
<li>
<div class="item-content">
<div class="item-inner">
<div class="item-title">Ivan Petrov</div>
<div class="item-after">CEO</div>
</div>
</div>
</li>
<li>
<div class="item-content">
<div class="item-inner">
<div class="item-title">John Doe</div>
<div class="item-after"> <span class="badge">5</span></div>
</div>
</div>
</li>
<li>
<div class="item-content">
<div class="item-inner">
<div class="item-title">Jenna Smith</div>
</div>
</div>
</li>
</ul>
</div>
<p><a href="#" class="panel-close">Close me</a></p>
</div>
</div>`
_app.insertAdjacentElement('afterbegin', myDivPanel)
this.panel.create({
el: '.panel-left'
})
}
},
on: {
init: function() {
this.methods.createLeftPanel()
}
},
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>
`
}]
});
function createLeftPanel()...