您需要先安装一个扩展,例如 篡改猴、Greasemonkey 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 暴力猴,之后才能安装此脚本。
您需要先安装一个扩展,例如 篡改猴 或 Userscripts ,之后才能安装此脚本。
您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey,才能安装此脚本。
您需要先安装用户脚本管理器扩展后才能安装此脚本。
extend transip domain with easy-to-copy-paste url,token and DNS records
// ==UserScript== // @name Export TransIP DNS // @namespace http://tampermonkey.net/ // @version 0.3 // @description extend transip domain with easy-to-copy-paste url,token and DNS records // @author Tomas van Rijsse // @match https://www.transip.nl/cp/domein-hosting/* // @match https://www.transip.eu/cp/domain-hosting/* // @grant none // @require http://code.jquery.com/jquery-latest.js // ==/UserScript== /* jshint -W097 */ /* global jQuery */ 'use strict'; jQuery(function(){ exportDNS(); var waitingForFragment = setInterval( function(){ if(jQuery('.fragment').length > 0){ startObserver(); clearInterval(waitingForFragment); } }, 100 ); }); function startObserver(){ // Select the node that will be observed for mutations var targetNode = jQuery('.fragment')[0]; // Options for the observer (which mutations to observe) var config = { childList: true }; // Callback function to execute when mutations are observed var callback = function(mutationsList, observer) { observer.disconnect(); exportDNS(); observer.observe(targetNode, config); }; // Create an observer instance linked to the callback function var observer = new MutationObserver(callback); // Start observing the target node for configured mutations observer.observe(targetNode, config); } function exportDNS(){ var $rows = jQuery('.dns-form-panels').find('.form-panel'); if($rows.length == 0){ return false; } var $table = jQuery('<table></table>'); $table.append('<tr><th>Name</th><th>Type</th><th>Value</th></tr>'); $rows.each(function(){ var $ = jQuery; if($(this).find('input.content').val() != ""){ var $row = $('<tr></tr>'); $row.append('<td>'+ $(this).find('input.name').val() + '</td>'); $row.append('<td>'+ $(this).find('select.type').val() + '</td>'); $row.append('<td>'+ $(this).find('input.content').val() + '</td>'); $table.append($row); } }); $table.find('th,td').css({ padding:'0 10px 0 0', textOverflow: 'ellipsis', whiteSpace: 'nowrap', overflow: 'hidden', maxWidth: '400px' }) $table.find('th').css('text-align','left'); $table.css('padding','10px'); var $export = jQuery('<div class="overview-panel"></div>'); $export.append('<h3 class="ocp-overview-panel-header--border-bottom">DNS export: ' + jQuery('a.ocp-overview-panel-header__title-link').text().trim() + '</h3>'); if(jQuery('.auth-code-result:not(.hidden) input.js-authcode-input').length){ $export.append('<p>Auth code: '+ jQuery('input.js-authcode-input').data('authtoken') +'</p>'); } $export.append($table); jQuery('div.fragment-overview').append($export); }