mirror of
https://github.com/futurepress/epub.js.git
synced 2025-10-04 15:09:16 +02:00
Views -> Controllers, Moved previousLocationCfi logic to Reader, Bookmarks in Reader
This commit is contained in:
parent
3bfadb2abc
commit
e4be17a428
24 changed files with 1363 additions and 1003 deletions
57
reader/controllers/bookmarks_controller.js
Normal file
57
reader/controllers/bookmarks_controller.js
Normal file
|
@ -0,0 +1,57 @@
|
|||
EPUBJS.reader.BookmarksController = function() {
|
||||
var book = this.book;
|
||||
|
||||
var $bookmarks = $("#bookmarksView"),
|
||||
$list = $bookmarks.find("#bookmarks");
|
||||
|
||||
var docfrag = document.createDocumentFragment();
|
||||
|
||||
var show = function() {
|
||||
$bookmarks.show();
|
||||
};
|
||||
|
||||
var hide = function() {
|
||||
$bookmarks.hide();
|
||||
};
|
||||
|
||||
var createBookmarkItem = function(cfi) {
|
||||
var listitem = document.createElement("li"),
|
||||
link = document.createElement("a");
|
||||
|
||||
listitem.classList.add('list_item');
|
||||
|
||||
//-- TODO: Parse Cfi
|
||||
link.textContent = cfi;
|
||||
link.href = cfi;
|
||||
|
||||
link.classList.add('bookmark_link');
|
||||
|
||||
link.addEventListener("click", function(event){
|
||||
var cfi = this.getAttribute('href');
|
||||
book.gotoCfi(cfi);
|
||||
event.preventDefault();
|
||||
}, false);
|
||||
|
||||
listitem.appendChild(link);
|
||||
return listitem;
|
||||
};
|
||||
|
||||
this.settings.bookmarks.forEach(function(cfi) {
|
||||
var bookmark = createBookmarkItem(cfi);
|
||||
docfrag.appendChild(bookmark);
|
||||
});
|
||||
|
||||
$list.append(docfrag);
|
||||
|
||||
|
||||
|
||||
this.on("reader:bookmarked", function(cfi) {
|
||||
var item = createBookmarkItem(cfi);
|
||||
$list.append(item);
|
||||
});
|
||||
|
||||
return {
|
||||
"show" : show,
|
||||
"hide" : hide
|
||||
};
|
||||
};
|
Loading…
Add table
Add a link
Reference in a new issue