Comments (4)
At the top of the README, code is shown — 1 script inclusion, 1 line of JavaScript and 1 div — that gives you a working reader. What is missing?
from monocle.
Thanks for the prompt response.
monocle-min.js is not included in the stuff I cloned as far as I can see. I am assuming I would have to build it. I gather that the minified file referred to in the README is monocle-min. It would be useful to have an example of how to use the code without having to go through that step.
If I did have monocle-min.js I want something that works with this stuff I cooked [1] up that works with your Dubliners example, but that has oldbook and stuff that is missing from the latest code .
The way I see it I would like to set up my data in a bookdata variable and invoke the reader like this:
<script type="text/javascript"> var myBookData = { ... }; Monocle.addListener(window, 'load', function () {Monocle.Reader('rdr', myBookData)}); </script>Without having to write something to load the data myself.
[1]
var bookData = {
getComponents: function () {
return ["OEBPS/index.html", "OEBPS/index.html", "OEBPS/ar01s02.html", "OEBPS/ar01s03.html"];
},
getContents: function () {
return [{"src": "OEBPS/index.html", "children": [{"src": "OEBPS/index.html#anchor-1", "children": [], "title": "1. Part 1"}, {"src": "OEBPS/ar01s02.html", "children": [], "title": "2. Part 2"}, {"src": "OEBPS/ar01s03.html", "children": [], "title": "3. Part 3"}], "title": "Simple test file for Paquete"}];
},
getComponent: function (componentId) {
return this.getViaAjax(componentId);
},
getMetaData: function(key) {
return {
title: "Simple test file for Paquete",
creator: "Unknown"
}[key];
},
from monocle.
Every example (other than dogfood) shows how to load the basic Monocle scripts unminified. Unminified Monocle isn't recommended for production purposes — of course you're welcome to minify it your own way if you don't like Rake.
Wouldn't this bookdata variable look almost exactly like the bookdata object you've included above? Other than getComponent (where you've chosen to use Ajax), isn't every other line just data? Are you just suggesting that:
getComponents: function() { return ["OEBPS/index.html", "OEBPS/index.html", "OEBPS/ar01s02.html", "OEBPS/ar01s03.html"]; },
getContents: function () { return [{"src": "OEBPS/index.html", "children": [{"src": "OEBPS/index.html#anchor-1", "children": [], "title": "1. Part 1"}, {"src": "OEBPS/ar01s02.html", "children": [], "title": "2. Part 2"}, {"src": "OEBPS/ar01s03.html", "children": [], "title": "3. Part 3"}], "title": "Simple test file for Paquete"}]; },
getMetaData: function(key) { return { title: "Simple test file for Paquete", creator: "Unknown"}[key]; }
should become
components: ["OEBPS/index.html", "OEBPS/index.html", "OEBPS/ar01s02.html", "OEBPS/ar01s03.html"],
contents: [{"src": "OEBPS/index.html", "children": [{"src": "OEBPS/index.html#anchor-1", "children": [], "title": "1. Part 1"}, {"src": "OEBPS/ar01s02.html", "children": [], "title": "2. Part 2"}, {"src": "OEBPS/ar01s03.html", "children": [], "title": "3. Part 3"}], "title": "Simple test file for Paquete"}],
metadata: { title: "Simple test file for Paquete", creator: "Unknown" }
etc?
That's fine, but it's not a very significant saving in complexity, given how much it reduces flexibility. It might save you writing getComponent, but every deployment of Monocle I've seen has had a different approach to getComponent, so I'm not sure what a cookie-cutter version would look like.
I'm happy to contemplate a simplified layer over bookData, but it's not clear to me what simplification you're suggesting.
from monocle.
I'm closing this as 'answered'. Please re-open if there are remaining queries related to this, or open new tickets for specific documentation gaps. Thanks!
from monocle.
Related Issues (20)
- EPUB Reader using Monocle Issue : HOT 6
- Bookmark documentation HOT 1
- Core files and simple start-up steps for 3.20?
- Book preview function HOT 3
- IE check HOT 1
- Get active iframe on componentchanging event? HOT 2
- Touch vertical scroll broken on mobile devices HOT 1
- It does not work in Google Chrome version 44.0.2403.89 HOT 7
- [Android 5.x] Content isn't shown HOT 2
- How to implement placesaver? HOT 3
- Placesaver on domain with multiple ebooks not working well
- Node to percent calculation is not giving expected page no
- Cutting off text HOT 1
- internal links not working
- ePub with XML content
- Domain name for test site is down
- Monocle not working in latest versions of Chrome and Firefox
- opds support
- Text selction not working in IE11
- Forked Monocle (kind of)
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from monocle.