jQuery Listview
Listview for jQuery and jQuery Mobile
Listview for jQuery and jQuery Mobile
Listview for jQuery and jQuery Mobile
Listview - Remove/Undo
Listview - Hierarchy
Listview - Checklist
Listview - Filtering
// Use the settings object to change the theme
mobiscroll.settings = {
lang: ' ',
theme: ' ',
themeVariant: ' '
};
$(function () {
var now = new Date(),
listview,
range,
lastDayOfWeek = lastday = new Date(now.getFullYear(), now.getMonth(), now.getDate() + (7 - now.getDay()));
function filterItems(startDate, endDate, today) {
var tempDate;
$('.schedule-ul .mbsc-lv-item').removeClass('md-show-filter');
$('.schedule-ul .mbsc-lv-item').each(function (i, v) {
tempDate = new Date(+$(v).data('time'));
if (today) {
if (tempDate.getMonth() == now.getMonth() && tempDate.getDate() == now.getDate()) {
$(v).addClass('md-show-filter');
}
} else if (startDate <= tempDate && tempDate < endDate) {
$(v).addClass('md-show-filter');
}
});
if (!$('.md-show-filter').length) {
listview.add(30, 'No schedule found in this range!');
} else if (listview) {
listview.remove(30);
}
}
// init listview
listview = $('.schedule-ul').mobiscroll().listview({
enhance: true,
swipe: false,
striped: true,
onInit: function (ev, inst) {
// set default values
$('.schedule-ul li').each(function (i, v) {
var tempTime = new Date(now.getFullYear(), now.getMonth(), now.getDate() + (i > 6 ? (i - 6) : 0), now.getHours() + (i > 5 ? i * 2 : i), Math.round((now.getMinutes() + i * 5) / 5) * 5);
$(v).attr('data-time', tempTime.getTime());
$(v).find('.md-time').text(mobiscroll.util.datetime.formatDate('D d, hh:ii', tempTime));
});
filterItems(now, '', true);
}
}).mobiscroll('getInst');
// init range
range = $('.md-custom-range').mobiscroll().range({
defaultValue: [new Date(now.getFullYear(), now.getMonth(), now.getDate() + 5), new Date(now.getFullYear(), now.getMonth(), now.getDate() + 10)],
onSet: function (event, inst) {
var selectedDates = inst.getVal();
filterItems(new Date(selectedDates[0]), new Date(selectedDates[1]));
$('.schedule-text').text(mobiscroll.util.datetime.formatDate('m/d', selectedDates[0]) + ' - ' + mobiscroll.util.datetime.formatDate('m/d', selectedDates[1]));
}
}).mobiscroll('getInst');
$('.md-range-show').off().click(function () {
range.show();
});
// checkbox change
$('.md-schedule-call').change(function (ev) {
if (ev.target.checked) {
$('.schedule-ul').find('.md-call').removeClass('md-hide-call');
} else {
$('.schedule-ul').find('.md-call').addClass('md-hide-call');
}
});
$('.md-schedule-meeting').change(function (ev) {
if (ev.target.checked) {
$('.schedule-ul').find('.md-meeting').removeClass('md-hide-meeting');
} else {
$('.schedule-ul').find('.md-meeting').addClass('md-hide-meeting');
}
});
// segmented change
$('.md-schedule-range').change(function (ev) {
if (ev.target.value == 'today') {
$('.schedule-text').text(ev.target.value);
filterItems(now.getTime(), '', true);
} else if (ev.target.value == 'week') {
$('.schedule-text').text('this week');
filterItems(now, lastDayOfWeek);
} else {
range.show();
}
});
})
<div class="md-schedule" style="display:none" mbsc-form>
<label>
Show Calls
<input class="md-schedule-call" type="checkbox" checked>
</label>
<label>
Show Meetings
<input class="md-schedule-meeting" type="checkbox" checked>
</label>
<label>
Today
<input type="radio" data-role="segmented" class="md-schedule-range" value="today" name="range" checked>
</label>
<label>
this Week
<input type="radio" data-role="segmented" class="md-schedule-range" value="week" name="range">
</label>
<label>
Custom
<input type="radio" data-role="segmented" class="md-schedule-range md-range-show" value="custom" name="range">
</label>
<div class="md-custom-range"></div>
<ul class="schedule-ul" style="display: none;">
<li>Schedule for <span class="schedule-text">today</span></li>
<li data-icon="phone" class="md-item md-call md-today md-week">
<h4>Owen Adams</h4>
<h4>Sunholdings Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-today md-week">
<h4>Kian Phillips</h4>
<h4>sol-flex Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-today md-week">
<h4>Robert Bradley</h4>
<h4>Silvermedia</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-today md-week">
<h4>Lydia Young</h4>
<h4>Zimplex</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-week">
<h4>Hollie Hudson</h4>
<h4>Stanelectrics</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-week">
<h4>Lynn Elliott</h4>
<h4>Techhex</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-week">
<h4>Konner Murray</h4>
<h4>HACME Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-week">
<h4>Morgan Downs</h4>
<h4>Itex Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-custom">
<h4>Warren Boone</h4>
<h4>Sumline</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-custom">
<h4>Charlie Jenkins</h4>
<h4>Quaddoex</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-custom">
<h4>Jillian Hobbs</h4>
<h4>Indizap</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-week">
<h4>Donald Mccormick</h4>
<h4>Zootrax</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-week">
<h4>Luke Harper</h4>
<h4>Unihouse</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-week">
<h4>Leah West</h4>
<h4>Ap-care</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-week">
<h4>Billie Rivas</h4>
<h4>Technoit Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-custom">
<h4>Janae Diaz</h4>
<h4>Plex-ron Corp.</h4>
<span class="md-time"></span>
</li>
<li data-icon="phone" class="md-item md-call md-custom">
<h4>Raquel Bentley</h4>
<h4>Silicon-lax</h4>
<span class="md-time"></span>
</li>
<li data-icon="location" class="md-item md-meeting md-custom">
<h4>Harley Burke</h4>
<h4>Lamzone</h4>
<span class="md-time"></span>
</li>
</ul>
</div>
.demo-main-cont.demo-comp-listview { padding: 0; }
.demo-comp-listview .demo-note { margin: 10px; }
.md-schedule .md-time {
position: absolute;
right: 1.25em;
top: 50%;
margin-top: -9px;
}
.md-schedule .md-schedule-header {
padding: .5em 1em;
}
.md-schedule .md-item {
display: none;
}
.md-schedule .md-show-filter {
display: block;
}
.md-custom-range {
display: none;
}
.md-schedule .md-hide-meeting,
.md-schedule .md-hide-call {
display: none;
}
Listview - Load on demand
Listview - Load more
Listview - Event handlers
EVENTS FIRED:
Listview - Quick Navigation
Looking for something you didn't see or have a sales question?
Ask us about it, we're here to help.
What framework are you using?
Introducing the next generation of Mobiscroll
The Mobiscroll 5 Beta 4 includes the brand new Scheduler, Agenda and Event calendar, Date, time, calendar and Range picker components.
We’ll be gradually adding more components and functionality. If you want to give the new version a go, you can check them out below.
- Redesigned event calendar, scheduler with drag & drop
- A new way of working with recurring events
- Updated themes with dynamic dark mode
- New date & time pickers
- Range picker with advanced customization
- Dynamic options with global updates
We have to set you up with a trial for this to run 👍
Step 1.Install the Mobiscroll CLI from npm
$ npm install -g @mobiscroll/cli
The CLI makes configuring your apps super simple 👍
Step 2.Run the following command in the root folder of your Ionic project
$ mobiscroll config ionic
You will be prompted to log in with your mobiscroll account. Set your password here
Create an Ionic 3 & Mobiscroll starter with the CLI:
Run this command for Ionic 4 & Mobiscroll starter:
Step 3.Copy the code into your app.
Step 4.Run ionic serve in the root folder of your app 🎉
$ ionic serve
And voilà, everything should be running smoothly.
Step 1.Install the Mobiscroll CLI from npm
$ npm install -g @mobiscroll/cli
The CLI makes configuring your apps super simple 👍
Step 2.Run the following command in the root folder of your Ionic project
$ mobiscroll config ionic
You will be prompted to log in with your mobiscroll account. Set your password here
Run this command for Ionic 5 & React Mobiscroll starter:
Step 4.Run ionic serve in the root folder of your app 🎉
$ ionic serve
And voilà, everything should be running smoothly.
Step 1.Install the Mobiscroll CLI from npm
$ npm install -g @mobiscroll/cli
The CLI makes configuring your apps super simple 👍
Step 2.Run the following command in the root folder of your Angular project
$ mobiscroll config angular
You will be prompted to log in with your mobiscroll account. Set your password here
Step 3.Copy the code into your app. HTML goes into the markup, TS into Typescript.
Step 4.Run ng serve in the root folder of your app 🎉
$ ng serve
And voilà, everything should be running smoothly.
Extract the zip file and run the project like any Ionic app. Make sure to have Ionic CLI installed and open the terminal in the app root folder.
$ npm install
$ ionic serve
Let us know if we can help and enjoy!
Enter a new password and hit the button below to change it!
You are setting a password for the account
Your password has been changed!
Everything is set up so that you can dig in right away and start exploring.
We have set up a trial so that you can try the demos locally.
Extract the zip file and open the demo in your favorite browser.
To install Mobiscroll in your project
follow instructions from this page.
Let us know if we can help and enjoy! 👍
Please extract the zip file and run the project like any Angular CLI app.
Make sure to have the Angular CLI installed.
For installation and usage, extract the zip file and open a terminal window and follow these steps.
$ npm install
$ ng serve --open
Let us know if we can help and enjoy! 👍
Everything is set up so that you can dig in right away and start exploring.
We have set up a trial so that you can try the demos locally.
The easiest way to get started is to follow the installation steps and by
grabbing the code directly from the demo page. Let us know if we can help and enjoy! 👍
You'll find a fully functional Kitchen-sink Ionic app in the zip file.
Everything is set up so that you can dig in right away and start exploring.
We have set up a trial so that you can try the demos locally.
The demos are using Babel's in-browser ES6 and JSX transformer.
Extract the zip file and open the demo in your browser. To install Mobiscroll in your project
follow instructions from this page.
Let us know if we can help and enjoy! 👍