Understanding Safari Reader


Interesting enough to find out the  Reader function in Safari is actually Javascript and there are many interesting stuff from the 2000 line code: * 5 main parts in the file: * 1. define const * 2. helper functions * 3. CandidateElement * 4. String Prototype extension * 5. ReaderArticleFinder (main) * * findArticle: look for suggested candidate, otherwise look for others * when looking for articles, check basic score of each elements (text length, text depth, id and class name, language) * then cleanArticleNode: find pruneElements and remove them by shouldPruneElement: classname, textlength, imagearea, calculateLinkDensity * Way to call it: * var ReaderArticleFinderJS = new ReaderArticleFinder(document); * //var article = ReaderArticleFinderJS.findArticle(); * ReaderArticleFinderJS.isReaderModeAvailable(); * ReaderArticleFinderJS.prepareToTransitionToReader();   Blog also for this: http://joevennix.com/2011/05/09/Hacking-Safari-Reader.html
相關文章
相關標籤/搜索