Greasy Fork

Greasy Fork is available in English.

麦能网练习题自动答题

麦能网课程作业、模拟试卷自动答题

目前为 2019-04-28 提交的版本。查看 最新版本

// ==UserScript==
// @name         麦能网练习题自动答题
// @namespace    https:/blog.luoyb.com
// @version      1.1 Beta
// @description  麦能网课程作业、模拟试卷自动答题
// @author       robin<[email protected]>
// @match        http*://g.cjnep.net/lms/web/exam/exambegin*
// @match        http*://g.cjnep.net/lms/web/exam/examshow*
// @license      GPL
// @icon         http://fs.cjnep.net/resources/public/favicon.ico
// @grant        none
// ==/UserScript==

(function() {
    'use strict';
    function getanswer(){
        var $question=$('.questiondiv>.ptypediv');
        for(var i=0;i<$question.length;i++) {
            var $item=$($question[i]).find('.sdiv>.contdiv');
            for(var j=0;j<$item.length;j++) {
                var $c=$($item[j]);
                var $t=$c.find('.namediv').text();
                var $type=$c.find('.itemdiv>.optiondiv').length;
                var $a=$c.find('.ansdiv>span');
                var $p=($a.length/2);
                var $ans=[];
                var $ansind=0;
                for(var k=$p;k<$a.length;k++){
                    if($($($a[k]).find('input')[0]).is(':checked')){
                        $ans.push($type ? $($a[k]).text() : $ansind.toString());
                    }
                    $ansind ++;
                }
                sessionStorage.setItem($t,$ans.join('|'));
            }
        }
    }
    function autoanswer(){
        var $question=$('.questiondiv>.ptypediv');
        $('.answerdiv>.btndiv').append('<div class="text-center" style="width:100%;color:red;margin-top:10px;">已启用答题插件,直接交卷可获取答案<br/>返回或者点“再做一次”后自动答题</div>');
        for(var i=0;i<$question.length;i++) {
            var $item=$($question[i]).find('.sdiv>.contdiv');
            for(var j=0;j<$item.length;j++) {
                var $c=$($item[j]);
                var $t=$c.find('.namediv').text();
                var $type=$c.find('.itemdiv>.optiondiv').length;
                var $a=$c.find('.ansdiv>span');
                var $index=0;
                var $ans=sessionStorage.getItem($t).split('|');
                for(var k=0;k<$a.length;k++){
                    if((($type&&$.inArray($($a[k]).text(),$ans)>=0)) || ($type==0&&$.inArray($index.toString(),$ans)>=0)) {
                        $($($a[k]).find('input')[0]).attr('checked', true);
                        $($($a[k]).find('input')[0]).click();
                    }
                    $index++;
                }
            }
        }
    }
    window.location.pathname=='/lms/web/exam/examshow'?getanswer():autoanswer();
})();