安全教育平台自动答题

支持安全课程、专题活动

目前為 2019-08-10 提交的版本,檢視 最新版本

// ==UserScript==
// @name         安全教育平台自动答题
// @description  支持安全课程、专题活动
// @namespace    https://greasyfork.org/users/197529
// @homepage     https://greasyfork.org/scripts/372426
// @supportURL   https://greasyfork.org/scripts/372426/feedback
// @version      0.7.6
// @author       kkocdko
// @license      Unlicense
// @match        *://*.xueanquan.com/*
// ==/UserScript==
'use strict'

const addFloatButton = initFloatButton()

addFloatButton('自动答题', () => {
  document.querySelectorAll('[type=radio], [type=checkbox]').forEach(el => {
    if (!el.checked) {
      el.value = 1
      el.click()
    }
  })
  window.scrollTo(window.scrollX, document.documentElement.scrollHeight || document.body.scrollHeight)
})

function initFloatButton () {
  return (document.addFloatButton = document.addFloatButton || (() => {
    const buttonBarShadow = document.createElement('div').attachShadow({ mode: 'open' })
    buttonBarShadow.innerHTML = '<style>:host{position:fixed;top:3px;left:3px;z-index:9999999999;height:0}input{display:none}input~*{float:left;margin:3px;padding:1em;outline:0;border:0;border-radius:4px;background:#2196f3;box-shadow:0 1px 3px 0 #00000022;color:#fff;font-size:14px;line-height:0;transition:.3s}:active{background:#63b5f7;box-shadow:0 2px 5px 0 #00000033}label{border-radius:50%}input:checked~label{opacity:.3;transform:translateY(3em)}button:active{transition:0s}input:checked~button{visibility:hidden;opacity:0;transform:translateY(-3em)}</style><input id=hidebtns type=checkbox><label for=hidebtns></label>'
    document.body.appendChild(buttonBarShadow.host)
    return (text, onclick) => {
      const button = document.createElement('button')
      button.textContent = text
      button.addEventListener('click', onclick)
      return buttonBarShadow.appendChild(button)
    }
  })())
}