mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
67 lines
1.5 KiB
JavaScript
67 lines
1.5 KiB
JavaScript
![]() |
define(['css!./dockedtabs'], function () {
|
|||
|
|
|||
|
function render(options) {
|
|||
|
|
|||
|
var elem = document.createElement('div');
|
|||
|
|
|||
|
elem.classList.add('dockedtabs');
|
|||
|
elem.classList.add('dockedtabs-bottom');
|
|||
|
|
|||
|
// tabs:
|
|||
|
// home
|
|||
|
// favorites
|
|||
|
// live tv
|
|||
|
// now playing
|
|||
|
|
|||
|
document.body.appendChild(elem);
|
|||
|
|
|||
|
return elem;
|
|||
|
}
|
|||
|
|
|||
|
function initHeadRoom(instance, elem) {
|
|||
|
|
|||
|
require(["headroom"], function () {
|
|||
|
|
|||
|
// construct an instance of Headroom, passing the element
|
|||
|
var headroom = new Headroom(elem, {
|
|||
|
// or scroll tolerance per direction
|
|||
|
tolerance: {
|
|||
|
down: 20,
|
|||
|
up: 0
|
|||
|
},
|
|||
|
classes: {
|
|||
|
pinned: 'dockedtabs--pinned',
|
|||
|
unpinned: 'dockedtabs--unpinned',
|
|||
|
top: 'dockedtabs--top',
|
|||
|
notTop: 'dockedtabs--not-top',
|
|||
|
initial: 'dockedtabs-headroom'
|
|||
|
}
|
|||
|
});
|
|||
|
// initialise
|
|||
|
headroom.init();
|
|||
|
|
|||
|
instance.headroom = headroom;
|
|||
|
});
|
|||
|
}
|
|||
|
|
|||
|
function dockedTabs(options) {
|
|||
|
|
|||
|
var self = this;
|
|||
|
|
|||
|
self.element = render(options);
|
|||
|
|
|||
|
initHeadRoom(self, self.element);
|
|||
|
}
|
|||
|
|
|||
|
dockedTabs.prototype.destroy = function() {
|
|||
|
var self = this;
|
|||
|
|
|||
|
if (self.headroom) {
|
|||
|
self.headroom.destroy();
|
|||
|
}
|
|||
|
|
|||
|
self.Element = null;
|
|||
|
};
|
|||
|
|
|||
|
return dockedTabs;
|
|||
|
});
|