// ==UserScript== // @name 搞定设计(屏蔽水印、会员小提示),可下载PDF格式!! // @version 1.0.0 // @icon http://dynamic-image.bear20.com/640x267/uploadImages/2020/289/34/9DTKT3Y2XR06.jpg // @description try to take over the world! // @author You // @match *://*.gaoding.com/design?id=* // @require https://cdn.bootcss.com/html2canvas/0.5.0-beta4/html2canvas.js // @grant none // @namespace http://tampermonkey.net/ // @downloadURL none // ==/UserScript== (function ($) { "use strict"; // A nice closure for our definitions function getjQueryObject(string) { // Make string a vaild jQuery thing var jqObj = $(""); try { jqObj = $(string) .clone(); } catch (e) { jqObj = $("") .html(string); } return jqObj; } function printFrame(frameWindow, content, options) { // Print the selected window/iframe var def = $.Deferred(); try { frameWindow = frameWindow.contentWindow || frameWindow.contentDocument || frameWindow; var wdoc = frameWindow.document || frameWindow.contentDocument || frameWindow; if(options.doctype) { wdoc.write(options.doctype); } wdoc.write(content); wdoc.close(); var printed = false; var callPrint = function () { if(printed) { return; } // Fix for IE : Allow it to render the iframe frameWindow.focus(); try { // Fix for IE11 - printng the whole page instead of the iframe content if (!frameWindow.document.execCommand('print', false, null)) { // document.execCommand returns false if it failed -http://stackoverflow.com/a/21336448/937891 frameWindow.print(); } // focus body as it is losing focus in iPad and content not getting printed $('body').focus(); } catch (e) { frameWindow.print(); } frameWindow.close(); printed = true; def.resolve(); } // Print once the frame window loads - seems to work for the new-window option but unreliable for the iframe $(frameWindow).on("load", callPrint); // Fallback to printing directly if the frame doesn't fire the load event for whatever reason setTimeout(callPrint, options.timeout); } catch (err) { def.reject(err); } return def; } function printContentInIFrame(content, options) { var $iframe = $(options.iframe + ""); var iframeCount = $iframe.length; if (iframeCount === 0) { // Create a new iFrame if none is given $iframe = $('