bqbtoan / episodes Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/episodes
Automatically exported from code.google.com/p/episodes
Create minified version of episodes.js.
Original issue reported on code.google.com by [email protected]
on 2 Nov 2010 at 3:22
Certain versions of IE will return "unknown" instead of "undefined" for
typeof(window.external.pageT). This will cause a JS error following the test on
line https://code.google.com/p/episodes/source/browse/trunk/episodes.js#266
We've been able to reproduce that behavior on a machine with Windows XP and IE8
8.0.6001.18702 (although 2 other machines with the same IE version didn't
reproduce). But this behavior has been documented for IE when accessing objects
via COM+ bridge:
http://stackoverflow.com/questions/10982739/typeof-returning-unknown-in-ie
Original issue reported on code.google.com by [email protected]
on 9 Mar 2014 at 12:28
What steps will reproduce the problem?
1. Using Chrome, load ex1.html without browser refresh (i.e. click on a link).
What is the expected output? What do you see instead?
EPISODES.measure doesn't work. It should.
What version of the product are you using? On what operating system?
0.2. Ubuntu 10.10. Chrome 9.0.597.94.
Please provide any additional information below.
It's because of the line
EPISODES.measure = function(en, st, en) { EPISODES.q.push( ["measure", en, st,
en || new Date().getTime()] ); };
It has two parameters with the same name. This causes calls like
EPISODES.measure("jQuery", "jQuery Loading")
to fail because the first parameter is overwritten by the third, which is
undefined.
For example:
>var test = function(en, st, en) { console.log(en, st, en); };
>test('a', 'b', 'c');
c b c
I fixed by changing the line to
EPISODES.measure = function(en, st, enOrT) { EPISODES.q.push( ["measure", en,
st, enOrT || new Date().getTime()] ); };
This seems to fix it.
Original issue reported on code.google.com by [email protected]
on 14 Feb 2011 at 2:47
Remove EPISODES.drawEpisodes from episodes.js, since episodes.js should be as
small as possible and this visualization is definitely not essential for every
website that would want to use Episodes.
It should be moved to a different file, maybe episodes.visualize.js, or
something like that?
Original issue reported on code.google.com by work%[email protected]
on 2 Nov 2010 at 8:28
What steps will reproduce the problem?
1. Open Chrome web inspector/other JavaScript console
2. Visit http://stevesouders.com/episodes2/ex1.html
What is the expected output? What do you see instead?
- Should not see any errors show up. Instead, the following is logged to the console:
Error: episodeName is undefined in EPISODES.measure.
What version of the product are you using? On what operating system?
- 0.2 on MacOS X, Chrome 19.0.1084.46
Please provide any additional information below.
- Appears to be a bug with the example page, and not with Episodes itself. In the head of the sample page the following code exists:
EPISODES.measure = function(en, st, en) { EPISODES.q.push( ["measure", en, st,
en || new Date().getTime()] ); };
The 'en' variable is used twice, causing episodes to not to be able to
distinguish between the episode name and the end time.
Original issue reported on code.google.com by [email protected]
on 24 May 2012 at 8:43
I am using this in drupal where some other things can be appended to after
this, and even, below the </html> with some debug information. I added some
small code on the visualization to add a height to the holding div.
The height is mainly set by trial and error.
Original issue reported on code.google.com by [email protected]
on 17 Mar 2011 at 2:27
Attachments:
Update whitepaper from old version of Episodes.
Original issue reported on code.google.com by [email protected]
on 2 Nov 2010 at 3:25
Episodes is currently using the escape() function to encode the URL in the
cookie:
https://code.google.com/p/episodes/source/browse/trunk/episodes.js#315
In theory, this is completely fine, as the specification for HTTP Cookies
(http://tools.ietf.org/html/rfc2965) only mentions the following around
encoding:
"To maximize compatibility with user agents, servers that wish to store
arbitrary data in a cookie-value SHOULD encode that data, for example, using
Base64"
So, while technically the RFC doesn't even require URL encoding, it is the
de-facto implementation. And most commonly used is the function
encodeURIComponent().
In fact, the O'Reilly book "Javascript: The definitive Guide" mentions a helper
function to parse cookies and states in the comment "Assume that cookie values
are encoded with encodeURIComponent()."
https://www.inkling.com/read/javascript-definitive-guide-david-flanagan-6th/chap
ter-20/parsing-the-document-cookies
I could imagine that in reality a lot of people are making this assumption, and
this can cause severe bugs (which we run into):
> escape('http://www.foo.co.kr/방콕')
"http%3A//www.foo.co.kr/%uBC29%uCF55"
> encodeURIComponent('http://www.foo.co.kr/방콕')
"http%3A%2F%2Fwww.foo.co.kr%2F%EB%B0%A9%EC%BD%95"
> decodeURIComponent(escape('http://www.foo.co.kr/방콕'))
URIError: URI malformed
Original issue reported on code.google.com by [email protected]
on 23 Mar 2014 at 1:25
What steps will reproduce the problem?
1. load a page episodes.js on it and with the EPISODES cookie not the last one
in document.cookie.
2. Run EPISODES.findStartCookie().
What is the expected output? What do you see instead?
Expected: the start time. Actual: undefined.
What version of the product are you using? On what operating system?
Checked out via "svn checkout http://episodes.googlecode.com/svn/trunk/
episodes-read-only" on the morning of 14/02/2011. Version: 0.2. Rev: r13. OS:
Ubuntu 10.10. Browser: Firefox 3.6.13.
Please provide any additional information below.
It looks like the line:
var aCookies = document.cookie.split(' ');
should be:
var aCookies = document.cookie.split('; ');
Otherwise, the semicolon separating cookies is left in and therefore it does
not match document.referrer.
I implemented this fix and it seems to work fine.
Original issue reported on code.google.com by [email protected]
on 14 Feb 2011 at 1:35
EPISODES.sendBeacon takes in a "params" argument, but when EPISODES.done calls
EPISODES.sendBeacon (when EPISODES.autorun is true), it does not pass any
arguments.
Ideally, the user could set some global beacon params which would be respected
by EPISODES.sendBeacon.
I've attached a patch that represents one possible implementation of this
functionality.
Original issue reported on code.google.com by [email protected]
on 2 Feb 2011 at 3:59
Attachments:
Need many more examples:
- more listener examples consuming postMessage
- set autorun to false and do some lazy loading before sending beacon
- true Web 2.0 app that has different phases without any onload event
Original issue reported on code.google.com by [email protected]
on 2 Nov 2010 at 3:23
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.