您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
Automatically try to show big image instead of original preview.
当前为
- // ==UserScript==
- // @name TryToLoadBigImageAutomatically
- // @namespace mnts
- // @description Automatically try to show big image instead of original preview.
- // @include http://anime-pictures.net?*
- // @include *://*anime-pictures.*/*
- // @include http?://anime.reactor.cc/tag/?*
- // @include *://*anime.reactor.*/tag/*
- // @include http?://zerochan.net/?*
- // @include *://*zerochan.*/*
- // @include http?://otakumode.com/?*/post/?*
- // @include *://*otakumode.*/*/post/*
- // @include http?://?*.?*/?*
- // @include *://*.*/*
- // @version 1.3
- // @grant none
- // ==/UserScript==
- function tryAnimePictures()
- { //anime-pictures.net
- var asPreview = document.getElementById('big_preview_cont');
- if (asPreview === undefined || asPreview === null) return false;
- var aPreview = asPreview.getElementsByTagName('a')[0];
- if (aPreview === undefined || asPreview === null) return false;
- var bigImgUrl = aPreview.getAttribute('href');
- if (bigImgUrl !== undefined && bigImgUrl !== "") {
- var imgPreview = aPreview.getElementsByTagName('img')[0];
- if (imgPreview === undefined || imgPreview === null) return false;
- imgPreview.setAttribute('width', imgPreview.width);
- imgPreview.setAttribute('src', '');
- imgPreview.setAttribute('src', bigImgUrl);
- }
- return true;
- }
- function tryAnimeReactorCC()
- { //anime.reactor.cc
- var asPreview = document.getElementsByClassName('prettyPhotoLink');
- var result = false;
- for (var i = 0; i < asPreview.length; i++) {
- result = true;
- var a = asPreview[i];
- var urlBigImg = a.getAttribute('href');
- var img = a.getElementsByTagName('img')[0];
- img.setAttribute('src', '');
- img.setAttribute('src', urlBigImg);
- }
- return result;
- }
- function tryZerochan()
- { //zerochan.net
- var divPreview = document.getElementById('large');
- if (divPreview === undefined || divPreview === null) return false;
- var aPreview = divPreview.getElementsByTagName('a')[0];
- if (aPreview === undefined || aPreview === null) return false;
- var imgPreview = aPreview.getElementsByTagName('img')[0];
- if (imgPreview === undefined || imgPreview === null) return false;
- var urlFull = aPreview.getAttribute('href');
- if (urlFull.length <= 0) return false;
- imgPreview.setAttribute('src', '');
- imgPreview.setAttribute('src', urlFull);
- return true;
- }
- function tryOtakumode()
- { //otakumode.com
- var className = 'first nomenu nodraggable';
- var imgsPreview = document.getElementsByClassName(className);
- if (imgsPreview === undefined || imgsPreview === null) return false;
- var countPreview = 0;
- var divContents = document.getElementById('contents');
- if (divContents === undefined || divContents === null) return false;
- divContents.addEventListener('DOMSubtreeModified', function() {
- var imgsPreview = document.getElementsByClassName(className);
- if (imgsPreview === undefined || imgsPreview === null) return;
- if (countPreview === imgsPreview.length) return;
- countPreview = imgsPreview.length;
- var exprPass = ".*x\.jpg$";
- for (var i = 0; i < imgsPreview.length; i++) {
- var imgPreview = imgsPreview[i];
- var urlImage = imgPreview.getAttribute('src');
- if (urlImage.match(exprPass) === null) {
- var ext = '.jpg';
- var urlImageBig = urlImage.substring(0, urlImage.length - ext.length) + 'x' + urlImage.substring(urlImage.length - ext.length);
- imgPreview.setAttribute('src', '');
- imgPreview.setAttribute('src', urlImageBig);
- }
- }
- });
- return true;
- }
- function allHrefToSrc()
- {
- console.log('window.onload');
- var imgs = document.getElementsByTagName('img');
- var expr = '.*\.(jpg|jpeg|png)$';
- for (var i = 0; i < imgs.length; i++) {
- var img = imgs[i];
- var nodeParent = img.parentNode;
- if (nodeParent.tagName !== 'A') continue;
- var src = img.getAttribute('src');
- var href = nodeParent.getAttribute('href');
- if (src === href) continue;
- if (href.match(expr) !== null) {
- img.setAttribute('src', '');
- img.setAttribute('src', href);
- }
- }
- }
- function tryCommon()
- { //*.*
- var body = document.getElementsByTagName('body')[0];
- if (body === undefined || body == null) return false;
- var countImg = 0;
- window.onload = function() {
- allHrefToSrc();
- };
- body.addEventListener('DOMSubtreeModified', function() {
- var imgs = document.getElementsByTagName('img');
- if (countImg === imgs.length) return;
- countImg = imgs.length;
- console.log('DOMSubtreeModified');
- allHrefToSrc();
- });
- return true;
- }
- if (tryAnimePictures()) {
- console.log('type: anime-pictures.net');
- } else if (tryAnimeReactorCC()) {
- console.log('type: anime.reactor.cc');
- } else if (tryZerochan()) {
- console.log('type: zerochan.net');
- } else if (tryOtakumode()) {
- console.log('type: otakumode.com');
- } else {
- console.log('type: http?://.*\..*/.*');
- tryCommon();
- }