// ==UserScript== // @name 500px图片下载 // @version 20151209 // @author qhq // @homepageURL https://greasyfork.org/zh-CN/scripts/14710 // @supportURL https://greasyfork.org/zh-CN/scripts/14710/feedback // @icon https://greasyfork.org/zh-CN/scripts/14710 // @description 在500px.com网站添加下载图片按钮 // @include http*://500px.com/* // @grant none // @namespace https://greasyfork.org/users/9065 // @downloadURL none // ==/UserScript== (function () { /** var src = $("#preload img").attr("src"); if (src.indexOf('/h%3D300/') == -1) { $( ".photo_sidebar .actions_region" ).append( '
下载图片
' ); } **/ var addBtnDownload = function (src) { var el = document.querySelector('.main_container .sidebar_region .photo_sidebar .actions_region'); el.insertAdjacentHTML('afterEnd', 'Download'); } var eventHandler = function (events) { events.forEach(function (event) { if (event.type == "attributes" && event.attributeName == 'src') { if (event.target.src.indexOf('/h%3D300/') == - 1 && event.target.alt != "" && event.target.className == "photo") { addBtnDownload(event.target.src); //console.log(event.target, event.attrChange, event.attrName, event.newValue); } } }); } // Firefox和Chrome早期版本中带有前缀 var MutationObserver = window.MutationObserver || window.WebKitMutationObserver || window.MozMutationObserver; // 选择目标节点 var target = document.querySelector('body'); // 创建观察者对象 var observer = new MutationObserver(eventHandler); // 配置观察选项: var config = { attributes : true, //attributeFilter : ["src"], //attributeOldValue : false, //childList : true, subtree : true } // 传入目标节点和观察选项 observer.observe(target, config); // 随后,你还可以停止观察 // observer.disconnect(); })();