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-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 no-navbar no-toolbar">
<!-- Slider container -->
<div class="swiper-container no-navbar no-toolbar">
<!-- Slides wrapper -->
<div class="swiper-wrapper">
<div class="swiper-slide" data-component='about' id='about'></div>
<div class="swiper-slide" data-component='test' id='test'></div>
<div class="swiper-slide" data-component='test2' id='test2'></div>
<div class="swiper-slide" data-component='test3' id='test3'></div>
</div>
<!-- Pagination, if required -->
<div class="swiper-pagination"></div>
</div>
</div>
</div>
</div>
</div>
CSS
.swiper-container {
height: 500px;
}
.hide-nav {
padding-top: 0px !important;
}
JavaScript
var $$ = Dom7
var app = new Framework7({
root: '#app',
theme: 'auto',
routes: [{
path: '/about/',
content: `
<div class="page">
<div class="page-content hide-nav">
<div class="block block-strong">About page</div>
</div>
</div>
`
},
{
path: '/test/',
component: {
template: `
<div class="page">
<div class="page-content hide-nav">
<div class="card card-outline">
<div class="card-content">
<div class="list media-list">
<ul id='myAnimistaList'>
{{#each myData}}
<li class="item-content item-input">
{{this.name}}
</li>
{{/each}}
</ul>
</div>
</div>
</div>
</div>
</div>
`,
data: function() {
return {
myData: 'Loading...'
}
},
methods: {
placesAutocomplete: function() {
var self = this;
var app = self.$app;
var $ = self.$;
$('#address').on('keyup', function() {
self.$setState({
showTheRestOfThePage: false
});
});
}
},
on: {
pageInit: function(e, page) {
var self = this;
var app = self.$app;
app.request.getJSON('https://jsonplaceholder.typicode.com/users/', {}, function(res) {
self.$setState({
'myData': res
})
},
function(xhr, status) {
console.log(xhr)
}
)
}
}
}
},
{
path: '/test2/',
content: `
<div class="page">
<div class="page-content hide-nav">
...