108 }109 //存放到本地存储空间

110 localStorage['config']=JSON.stringify(config);111 };112 $('#msgFromContent').val('');113 },500);114

115 //点击再次答题时再运行一次

116 $('.oneMore').click(function(){117 ans_plus(config['set']);118 })119

120 //如果处于模拟答题或者正式答题,则执行一次

121 if(window.location.pathname=='/monidati.html' | window.location.pathname=='/kaishijingsai.html')122 {123 ans_plus(config['set']);124 };125

126 //自动获取分享后的两次机会

127 $('#lji .dati').click(function()128 {129 //如果是登录状态,就自动获取机会

130 if($.getUrlParam('h'))131 {132 $('.icon-wechat').click();133 $('.icon-wechat').click();134 $('#jiathis_weixin_modal').hide();135 }136 return false;137 });138 setTimeout(()=>$('#lji .dati').click(),500);139

140 //console.log($('.jtico_weixin'));

141 //$('.jtico_weixin').click();

142

143 //根据url中a的值判断是否需要自动答题

144 if($('#lji span').eq(0).html()>0)145 {146 if($.getUrlParam('a')==1)147 //将config中的自动答题控制打开,

148 config['set']['auto_ans']=1;149 //localStorage['config']=JSON.stringify(config);

150 setTimeout(()=>$('#lbuts').click(),1000);151 }152

153 });154

155

156

157 //根据设置进行答题

158 functionans_plus(conf)159 {160 if(!conf['dtime'])161 conf['dtime']=3;162

163 //关闭自动作答功能

164 //conf['auto_ans']=0;

165

166 var dtime=parseInt(conf['dtime']*1000+500*Math.random());//做题间隔

167 var err=0;//匹配错误指示器

168

169 //基准x,y坐标,伪造回传数据

170 var posx=Math.floor(800+Math.random()*200);171 var posy=Math.floor(400+Math.random()*140);172

173 if(dtime<1200)174 {175 dtime=1200;176 }177

178 //点击交卷按钮时解锁交卷功能

179 $('.W_jiaoquancol').click(function(){$(this).removeClass('W_jiaoquancol')});180 //console.log(dtime);

181 if(conf['auto_ans']==1 | conf['sign_ans']==1 |conf['sign_ans_mouseover']==1)182 {183

184 //解锁上一题下一题

185 //setInterval(()=>{$('.W_bgcol').removeClass('W_bgcol');},500);

186

187 jQuery('ul.W_ti_ul li').each(188 function()189 {190 //console.log(dtime);

191 var target='';192 var li=jQuery(this);193 var logtxt='';194

195 //题号

196 var questnum=li.find('.w_fz18').eq(0).html();197 logtxt=questnum+'.'+logtxt;198

199 //题目类型,单选题,多选题

200 var questtype=li.find('.w_fz18').eq(1).html();201 logtxt=logtxt+'〔'+questtype+'〕';202 //题目

203 var quest=li.find('.w_fz18').eq(2).html().replace(/[  \r\n ]/g,"");204 for(i=0;i

214 //判断是否匹配,如果不匹配就报错

215 if(target=='')216 {217 //alert('匹配试题出现错误,请更新版本或联系作者');

218 err++;219 //自动作答的话就点击下一题

220 logtxt=logtxt+'题目:'+quest;221 console.log("%c"+logtxt,'color:red')222 if(conf['sign_ans']==1)223 {224 setTimeout(()=>{$('.w_btn_tab_down').eq(0).click();},questnum*dtime);225 }226 return true;227 }228

229 //查找答案

230 li.find('label').each(231 function()232 {233 var label=jQuery(this);234 var labertxt=label.find('sapn').eq(0).html();235 labertxt=labertxt.replace(/[ABCD.  \r\n ]/g,'');236

237 if(questtype=='单选题' & target==labertxt)238 {239 logtxt=logtxt+'答案:'+labertxt+';';240 //标红答案

241 if(conf['sign_ans']==1)242 label.find('sapn').eq(0).css('color','red');243 //鼠标滑过正确答案时选中

244 if(conf['sign_ans_mouseover']==1)245 {246 label.find('sapn').eq(0).mouseover(function(){247 $(this).click();248 $('.W_bgcol').removeClass('W_bgcol');249 $('.W_kuan li').eq(questnum-1).addClass('activess');250 if(questnum==20)251 {252 $('.W_jiaoquancol').removeClass('W_jiaoquancol');253 }254 })255 }256 //自动作答

257 if(conf['auto_ans']==1)258 {259 setTimeout(()=>{260

261 label.find('sapn').eq(0).click();262

263 //解除上一题下一题和题目序号的锁定

264 $('.W_bgcol').removeClass('W_bgcol');265 $('.W_kuan li').eq(questnum-1).addClass('activess');266 if(questnum==20)267 {268 $('.W_jiaoquancol').removeClass('W_jiaoquancol');269 }270 },(questnum-0.5)*dtime);271 }272 return false;273 }274 else if(questtype=='多选题' & target.indexOf(labertxt)>-1)275 {276 //标红答案

277 logtxt=logtxt+'答案:'+labertxt+';';278 //标红答案

279 if(conf['sign_ans']==1)280 label.find('sapn').eq(0).css('color','red');281 //鼠标滑过正确答案时选中

282 if(conf['sign_ans_mouseover']==1)283 {284 label.find('sapn').eq(0).mouseover(function(){285 $(this).click();286 $('.W_bgcol').removeClass('W_bgcol');287 $('.W_kuan li').eq(questnum-1).addClass('activess');288 if(questnum==20)289 {290 $('.W_jiaoquancol').removeClass('W_jiaoquancol');291 }292 })293 }294 if(conf['auto_ans']==1)295 {296 //自动作答

297 setTimeout(()=>{298 label.find('sapn').eq(0).click();299 //解除上一题下一题和题目序号的锁定

300 $('.W_bgcol').removeClass('W_bgcol');301 $('.W_kuan li').eq(questnum-1).addClass('activess');302 if(questnum==20)303 {304 $('.W_jiaoquancol').removeClass('W_jiaoquancol');305 }306

307 },(questnum-0.5)*dtime)

309

310

311 }312

313

314 }315

316 }317 );318 //自动作答的话就点击下一题

319 if(conf['auto_ans']==1)320 {321 setTimeout(()=>{322 $('.w_btn_tab_down').eq(0).click();323 if("undefined" != typeofClickButton)324 ClickButton({'button':0,'clientX':Math.floor(posx+Math.random()*50),'clientY':Math.floor(posy+Math.random()*15)});325 },questnum*dtime);326 }327

328 console.log(logtxt,'color:red');329 }330 );331 }332 //如果配有匹配错误,则自动交卷

333 if(conf['auto_ans']==1 & err==0)334 {335 setTimeout(()=>{$('.jiaojuan').eq(0).click();},51*dtime);336 }337 //if(err>0)

338 //alert('有'+err+'道题目匹配出错,请手动作答');

339 };

html5 答题器页面,JavaScript教程之一个基于chrome扩展的自动答题器(4)相关推荐

  1. python答题器_JavaScript教程之一个基于chrome扩展的自动答题器

    1 var config;//设置 2 var auto_all_ans=0;//全自动答题标志 3 4 $(function() {5 6 //加载设置 7 //config = {'set':{' ...

  2. [No0000188][VCB-Studio 科普教程 2.5] 基于 PotPlayer 和 madVR 的播放器教程(已更新 XySubFilter)...

    Potplayer 是高清影视常用的播放器,界面简洁,功能齐全,比 MPC-HC 和 MPC-BE 更人性化:但其默认方案十分糟糕,预设过多错误,无法正确播放 10-bit 视频,一直饱受诟病.VCB ...

  3. Python爬虫入门教程 90-100 凌晨5点的CSDN自动签到器,用Python爬虫干点闲事

    梦想橡皮擦:这是爬虫百例的第90篇文章,写到这里非常感慨,从第一篇文章在2018年7月30日发布至今已经将要过去2年的时间,即将到达终点.虽然过程中多次因为工作原因导致断更了,但是终于把这个系列坚持了 ...

  4. 最简单的基于FFMPEG+SDL的音频播放器

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

  5. 最简单的基于FFMPEG+SDL的音频播放器 ver2 (采用SDL2.0)

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

  6. 自动答题 之 Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。

    前几天接到的小单子,某些人员为了应付单位的硬性要求,每天必须在网上学习多少道题,每天必须在网上练习多少道题,所以想找人开发一个自动答题系统.上图为<某练兵比武在线学习>的自动答题演示. 怀 ...

  7. 最简单的基于FFMPEG SDL的音频播放器

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! ==== ...

  8. 最简单的基于FFMPEG+SDL的音频播放器:拆分-解码器和播放器

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

  9. 最简单的基于FFMPEG+SDL的音频播放器 拆分-解码器和播放器

    ===================================================== 最简单的基于FFmpeg的音频播放器系列文章列表: <最简单的基于FFMPEG+SDL ...

最新文章

  1. 爬虫之requests模块介绍
  2. Error: INFO ipc.Client: Retrying connect to server: Already tried XXX time(s).
  3. Android平台调用WebService详解
  4. java二维对象数组存入文件_关于Java:将2D数组保存到磁盘文件
  5. 2016/3/10 PHP (超文本预处理器) 是什么?
  6. php简述一下并集交集差集,总结了一下js中的差集、交集、并集
  7. 图卷积神经网络(GCN)理解与tensorflow2.0代码实现
  8. 直接拿来用!GitHub10个开源免费的后台管理面板
  9. mysql 声明时间变量_MySQL如何声明一个datetime变量?
  10. Java 8 特性 – 终极手册
  11. AKKA文档(java)——术语,概念
  12. Android之布局详解
  13. 用stream流将list集合根据某个字段分组成Map<String,List<T>>类型的集合
  14. 使用Windows 10自带工具 校验MD5 SHA1 SHA256类型文件
  15. 用料扎实的全模组电源,还有十年换新支持,安钛克HCG 850体验
  16. 从程序员到项目经理:懂电脑更要懂人脑
  17. BMM 和 FMM 中文分词
  18. flutter 仿网易云音乐(3)
  19. 【观察】揭秘:中信银行信用卡新核心系统自研之路
  20. (已解决)ModuleNotFoundError: No module named ‘pycocotools‘

热门文章

  1. 模拟键盘 keybord
  2. 设置title的样式
  3. ubuntu右上角不显示ibus(即输入法图标)的解决办法
  4. misc life 未来的购物方式
  5. 达梦数据库备份与还原
  6. 一天一条Linux指令-sz
  7. 网易我的世界手机如何玩java 版_我的世界手游版如何操作 网易我的世界手游怎么玩...
  8. oracle关于删除的触发器,oracle数据库删除触发器实例
  9. Java设计模式——UML类图
  10. 文件夹隐藏属性项灰色(无法更改)解决办法