• xgqfrms™, xgqfrms® : xgqfrms's offical website of GitHub!


    Jira & SVN & Chrome extensions

    Plugins

    SVN & Jira Plugins

    ok

    selector bug

    document.querySelector(`[id="description-val"]`).firstElementChild.innerText.trim();
    
    
    
    
    !function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=536)}({536:function(e,t,n){"use strict";window.SVNCC=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{kind:"无提交类型",testing:!1},n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.kind,o=t.testing,i=document.querySelector('[id="key-val"]').innerText.trim(),c=document.querySelector('[id="type-val"]').innerText.trim(),u=document.querySelector('[id="summary-val"]').innerText.trim(),l=document.querySelector('[id="description-val"]').firstElementChild.innerText.trim(),a=o?"是":"否";if("无提交类型"===r)switch(c){case"新需求":c="新功能";break;case"优化":c="追加递交";break;case"缺陷":c="BUG修复"}u!==l&&(u+=l),e="
    [JIRA编号] "+i+"
    [修改内容] "+u+"
    [提交类型] "+c+"
    [需要测试] "+a+"
    ",n&&console.log("result =
    ",e);try{window.copy(e),alert("copied!")}catch(e){console.error("auto copy failed!")}return e}}});
    
    ​
    // SVNCC({ kind: "BUG修复", testing: true, });
    
    

    bug

    
    
    !function(e){function t(r){if(n[r])return n[r].exports;var o=n[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,t),o.l=!0,o.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,r){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:r})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=536)}({536:function(e,t,n){"use strict";window.SVNCC=function(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{kind:"无提交类型",testing:!1},n=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.kind,o=t.testing,i=document.querySelector('[id="key-val"]').innerText.trim(),c=document.querySelector('[id="type-val"]').innerText.trim(),u=document.querySelector('[id="summary-val"]').innerText.trim(),l=document.querySelector('[id="description-val"]>[class="user-content-block"]').innerText.trim(),a=o?"是":"否";if("无提交类型"===r)switch(c){case"新需求":c="新功能";break;case"优化":c="追加递交";break;case"缺陷":c="BUG修复"}u!==l&&(u+=l),e="
    [JIRA编号] "+i+"
    [修改内容] "+u+"
    [提交类型] "+c+"
    [需要测试] "+a+"
    ",n&&console.log("result =
    ",e);try{window.copy(e),alert("copied!")}catch(e){console.error("auto copy failed!")}return e}}});
    
    ​
    // SVNCC({ kind: "BUG修复", testing: true, });
    
    

    Chrome extensions

    
    "use strict";
    
    /**
     *
     * @author xgqfrms
     * @license MIT
     * @copyright xgqfrms
     * @created 2018.12.12
     * @modified 2018.12.12
     *
     * @description Jira Plugin for shit SVN template
     * @augments
     * @example
     *
     */
    
    /*
    
    [JIRA编号]
    [修改内容]请添加文字描述
    [提交类型]BUG修复/新功能/需求修改/版本制作/代码整理/解决编译不过/初次提交/阶段性递交/追加递交
    [需要测试]是/否
    
    */
    
    const options = {
        kind: "新功能",// BUG修复/新功能/需求修改/版本制作/代码整理/解决编译不过/初次提交/阶段性递交/追加递交
        testing: true,
    };
    
    const SVNCommitCommentsAutoGenerator = (options = { kind: "无提交类型", testing: false, }, debug = false) => {
        let {
            kind,
            testing,
        } = options;
        let result = ``;
        let jiraId = document.querySelector(`[id="key-val"]`).innerText.trim();
        let type = document.querySelector(`[id="type-val"]`).innerText.trim();
        let summary = document.querySelector(`[id="summary-val"]`).innerText.trim();
        let description = document.querySelector(`[id="description-val"]>[class="user-content-block"]`).innerText.trim();
        let test = testing ? "是" : "否";
        if (kind === "无提交类型") {
            switch (type) {
                case "新需求":
                    type = "新功能";
                    break;
                case "优化":
                    type = "追加递交";
                    break;
                case "缺陷":
                    type = "BUG修复";
                    break;
                default:
                    break;
            }
        }
        if (summary !== description) {
            summary += description;
        }
        result = `
    [JIRA编号] ${jiraId}
    [修改内容] ${summary}
    [提交类型] ${type}
    [需要测试] ${test}
        `;
        if (debug) {
            console.log(`result =
    `, result);
        }
        try {
            window.copy(result);
            alert(`copied!`);
        } catch (error) {
            console.error(`auto copy failed!`);
        }
        return result;
    };
    
    
    export default SVNCommitCommentsAutoGenerator;
    
    export {
        SVNCommitCommentsAutoGenerator,
    };
    
    
    
    
    
    
    
    

    OK

    
    "use strict";
    
    /**
     *
     * @author xgqfrms
     * @license MIT
     * @copyright xgqfrms
     * @created 2018.12.12
     * @modified 2018.12.12
     *
     * @description Jira Plugin for shit SVN template
     * @augments
     * @example
     *
     */
    
    /*
    
    [JIRA编号]
    [修改内容]请添加文字描述
    [提交类型]BUG修复/新功能/需求修改/版本制作/代码整理/解决编译不过/初次提交/阶段性递交/追加递交
    [需要测试]是/否
    
    */
    
    const options = {
        kind: "新功能",// BUG修复/新功能/需求修改/版本制作/代码整理/解决编译不过/初次提交/阶段性递交/追加递交
        testing: true,
    };
    
    const SVNCommitCommentsAutoGenerator = (options = { kind: "无提交类型", testing: false, }, debug = false) => {
        let {
            kind,
            testing,
        } = options;
        let result = ``;
        let jiraId = document.querySelector(`[id="key-val"]`).innerText.trim();
        let type = document.querySelector(`[id="type-val"]`).innerText.trim();
        let summary = document.querySelector(`[id="summary-val"]`).innerText.trim();
        let description = document.querySelector(`[id="description-val"]>[class="user-content-block"]`).innerText.trim();
        let test = testing ? "是" : "否";
        if (kind === "无提交类型") {
            switch (type) {
                case "新需求":
                    type = "新功能";
                    break;
                case "优化":
                    type = "追加递交";
                    break;
                case "缺陷":
                    type = "BUG修复";
                    break;
                default:
                    break;
            }
        }
        if (summary !== description) {
            summary += description;
        }
        result = `
    [JIRA编号] ${jiraId}
    [修改内容] ${summary}
    [提交类型] ${type}
    [需要测试] ${test}
    `;
        if (debug) {
            console.log(`result =
    `, result);
        }
        try {
            window.copy(result);
            alert(`copied!`);
        } catch (error) {
            console.error(`auto copy failed!`);
        }
        return result;
    };
    
    
    export default SVNCommitCommentsAutoGenerator;
    
    export {
        SVNCommitCommentsAutoGenerator,
    };
    
    
    /*
    
    SVNCommitCommentsAutoGenerator();
    
    // "
    // [JIRA编号] CDD-289
    // [修改内容] 组件化管理平台- 用户管理 tree显示 false 数据
    // [提交类型] 追加递交
    // [需要测试] 否
    //     "
    
    SVNCommitCommentsAutoGenerator(options = { kind: "BUG修复", testing: true, });
    
    // "
    // [JIRA编号] CDD-289
    // [修改内容] 组件化管理平台- 用户管理 tree显示 false 数据
    // [提交类型] 优化
    // [需要测试] 是
    // "
    */
    
    
    
    
    

    chrome.tabs.executeScript

    https://developer.chrome.com/tabs
    https://developers.chrome.com/extensions/getstarted
    https://developer.chrome.com/extensions/activeTab

    https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API/tabs/executeScript
    https://www.reddit.com/r/learnprogramming/comments/1rueae/chrome_extension_chrometabsexecutescript_just/
    https://stackoverflow.com/questions/28760463/how-to-use-console-log-when-debugging-tabs-executescript


    Chrome & extensions & demo

    chrome://extensions/

    https://github.com/xgqfrms/Angular-2018/tree/master/000-xyz/Chrome/chrome-app

    steps

    image

    OK

    image

    bug

    H5 DnD & Error

    image


    popup.js

    
    // Copyright (c) 2012 The Chromium Authors. All rights reserved.
    // Use of this source code is governed by a BSD-style license that can be
    // found in the LICENSE file.
    
    
    function click(e) {
        chrome.tabs.executeScript(null,{
            code: "document.body.style.backgroundColor='" + e.target.id + "'",
        });
        window.close();
    }
    
    document.addEventListener('DOMContentLoaded', function () {
        var divs = document.querySelectorAll('div');
        for (var i = 0; i < divs.length; i++) {
            divs[i].addEventListener('click', click);
        }
    });
    
    

    manifest.json

    
    {
        "name": "A browser action with a popup that changes the page color",
        "description": "Change the current page color",
        "version": "1.0",
        "permissions": [
            "tabs",
            "http://*/*",
            "https://*/*"
        ],
        "browser_action": {
            "default_title": "Set this page's color.",
            "default_icon": "icon.png",
            "default_popup": "popup.html"
        },
        "manifest_version": 2
    }
    
    

    popup.html

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <meta http-equiv="X-UA-Compatible" content="ie=edge">
        <title>Set Page Color Popup</title>
        <link rel="stylesheet" href="popup.css">
    </head>
    
    <body>
        <div id="red">red</div>
        <div id="blue">blue</div>
        <div id="green">green</div>
        <div id="yellow">yellow</div>
        <script src="popup.js"></script>
    </body>
    
    </html>
    
    

    popup.css

    body {
        overflow: hidden;
        margin: 0px;
        padding: 0px;
        background: white;
    }
    
    div:first-child {
        margin-top: 0px;
    }
    
    div {
        cursor: pointer;
        text-align: center;
        padding: 1px 3px;
        font-family: sans-serif;
        font-size: 0.8em;
         100px;
        margin-top: 1px;
        background: #cccccc;
    }
    
    div:hover {
        background: #aaaaaa;
    }
    
    #red {
        border: 1px solid red;
        color: red;
    }
    
    #blue {
        border: 1px solid blue;
        color: blue;
    }
    
    #green {
        border: 1px solid green;
        color: green;
    }
    
    #yellow {
        border: 1px solid yellow;
        color: yellow;
    }
    
    

    Flag Counter

    ©xgqfrms 2012-2020

    www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!


  • 相关阅读:
    [剑指Offer] 从尾到头打印链表
    [剑指Offer] 替换空格
    [剑指Offer] 二维数组中的查找
    [LeetCode] 53. Maximum Subarray
    [LeetCode] 283. Move Zeroes
    haproxy + rabbitmq + keepalived的高可用环境搭建
    iis7下站点日志默认位置
    在vs2012中配置使用iisexpress
    tomcat配置域名,单项目指定多域名
    httpget和post
  • 原文地址:https://www.cnblogs.com/xgqfrms/p/10109703.html
Copyright © 2020-2023  润新知