NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript== // @name exFastComic - Dm5 // @namespace https://github.com/shuangrain/exFastComic // @version v20170612 // @description 滾滾滾看漫畫 !! // @author shuangrain // @match http://www.dm5.com/* // @grant none // ==/UserScript== (function() { 'use strict'; var versionTag = 'exFastComic_v20170612_'; var authorTag = 'https://github.com/shuangrain/exFastComic'; if ($('#showimage').length > 0) { Run(); } function Run() { var currentIndex = DM5_FLOAT_INDEX; var imgApi = 'chapterfun.ashx?cid='; var isLock = false; var arrUrl = function() { var tmpArr = []; var pageDom = $($('div.pageBar')[0]).find('a'); $.each(pageDom, function(index, item) { var href = $(item).attr('href'); var value = function() { var tmp = href.substring(0, href.indexOf('-')); tmp = tmp.substring(tmp.indexOf('/m') + 2); return tmp; }(); tmpArr.push(href + imgApi + value + '&page=' + parseInt(index + 1)); }); return tmpArr; }(); //重新讀取第一張圖,避免預設點擊至下一頁 loadImage(arrUrl[currentIndex - 1]); $(window).on('scroll', function() { var nowVal = $(window).scrollTop() + 2000; var imgVal = $('img#' + versionTag + currentIndex).height(); var isNeedLoadNext = nowVal > imgVal; if (isNeedLoadNext && currentIndex <= arrUrl.length && !isLock) { loadImage(arrUrl[currentIndex - 1]); } }); function loadImage(apiUrl) { isLock = true; $.get(apiUrl, function(result) { $('img#cp_image, p#imgloading').remove(); var tmpImgUrl = eval(result)[0]; var html = '<br/><img src="' + tmpImgUrl + '" id="' + versionTag + currentIndex + '" alt="' + authorTag + '"><br/>'; $('div#cp_img').append(html); currentIndex++; isLock = false; }); } //remove ggyy dom $('.topTool, .rightToolBar, .viewTool').remove(); } (function() { (function(i, s, o, g, r, a, m) { i['GoogleAnalyticsObject'] = r; i[r] = i[r] || function() { (i[r].q = i[r].q || []).push(arguments) }, i[r].l = 1 * new Date(); a = s.createElement(o), m = s.getElementsByTagName(o)[0]; a.async = 1; a.src = g; m.parentNode.insertBefore(a, m) })(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga'); ga('create', 'UA-100906309-1', 'auto'); ga('send', 'pageview'); })(); })();