iSmart刷题刷分刷成绩刷时长软件分享

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

iSmart刷题刷分刷成绩刷时长软件分享
⼀、软件介绍:
iSmart答题助⼿软件可以轻松⾃动刷题、刷单元题⽬、刷成绩、刷时长。

刷⼝语。

⽀持ismart题⽬ 、新编实⽤英语(第五版)综合教程、⼤学英语视听说、⼤学体验英语(第四版)听说教程、基础英语视听说、点击职业英语。

⼆、软件功能:
1、单元完成进度为100%
2、单元成绩基本为100分
3、单元会有学习时长
iSmart⾃动刷题刷分刷成绩刷时长软件运⾏效果图:
ismart刷题截图
三、软件主要实现原理:
主要通过浏览器+油猴脚本管理器的形式来实现。

油猴脚本必要的前端知识:HTML/CSS/JS 等;本脚本主要是通过油猴脚本+浏览器的⽅式去实现iSmart⾃动答题。

ismart脚本四、软件主要代码:
function selfJump(selector, class_mark, jump_type) {
let flag = false;
for (let [index, unit] of document.querySelectorAll(selector).entries()) { if (flag) {
unit.click();
flag = false;
delAlert();
break;
}
if (unit.classList.contains(class_mark)) {
flag = true;
if (time_settings.is_range == 1) {
if (jump_type == 1) {
if ((index < time_index.startIndex)) {//跳转⾄开始单元 time_index.startUnit.click();
break;
}
if (index >= time_index.endIndex) {
if (time_settings.is_loop == 1) {
time_index.startUnit.click();
break;
}
}
}
}
}
}
}
// 更新时长间隔
function updateGap() {
let rate = 1;
rate = Math.random();
if (rate < 0.5) {
rate = 0.5;
}
return time_settings.jump_interval * rate * 60 * 1000;
}
//关闭必修提⽰弹窗
function delAlert() {
setTimeout(() => {
//⾃动点击必修弹窗和麦克风弹窗。

try {
let x = document.getElementsByClassName("dialog-header-pc--close-yD7oN"); x[0].click();
document.querySelector("div.dialog-header-pc--dialog-header-2qsXD").parentElement.querySelector('button').click(); } catch(e) {
console.log(e)
}
}, 3500);
}
// 选择页⾯
function doChange() {
setTimeout(() => {
switch (time_settings.jump_type) {
case 3:
selfJump('.layoutHeaderStyle--circleTabsBox-jQdMo a', 'selected', 3);
// fall through
case 2:
selfJump('#header .TabsBox li', 'active', 2);
// fall through
case 1:
selfJump('#sidemenu li.group', 'active', 1);
// fall through
default:
if (time_settings.is_loop) {
document.querySelector('#sidemenu li.group').click();
}
}
doChange();
}, updateGap());
}
// 获取起始页⾯
function getStartUnit() {
for (let [index, unit] of document.querySelectorAll('#sidemenu li.group').entries()) {
if (index == time_index.startIndex) {
time_index.startUnit = unit;
}
}
}
function addViewMouseListener() {
view.top.bind('mousedown', function (event) {
//获取⿏标按下的时候左侧偏移量和上侧偏移量
setting.cache.view_x = $(this).position().left;
setting.cache.view_y = $(this).position().top;
setting.cache.mouse_x = event.originalEvent.clientX;
setting.cache.mouse_y = event.originalEvent.clientY;
console.log(setting.cache.mouse_x, setting.cache.mouse_y, setting.cache.view_x, setting.cache.view_y) });
$(document).bind('mousemove', function (event) {
//计算出现在的位置是多少
if (setting.cache.mouse_x == -1) return;
if (setting.cache.mouse_y - setting.cache.view_y > view.top.height() - view.div_main.height()) return;
let new_position_left = event.originalEvent.clientX - setting.cache.mouse_x + setting.cache.view_x,
new_position_top = event.originalEvent.clientY - setting.cache.mouse_y + setting.cache.view_y;
//加上边界限制
if (new_position_top < 0) {//当上边的偏移量⼩于0的时候,就是上边的临界点,就让新的位置为0
new_position_top = 0;
}
//如果向下的偏移量⼤于⽂档对象的⾼度减去⾃⾝的⾼度,就让它等于这个⾼度
if (new_position_top > $(document).height() - view.top.height() && $(document).height() - view.top.height() > 0) { new_position_top = $(document).height() - view.top.height();
}
//右限制
if (new_position_left > $(document).width() - view.top.width()) {
new_position_left = $(document).width() - view.top.width();
}
if (new_position_left < 0) {//左边的偏移量⼩于0的时候设置 左边的位置为0
new_position_left = 0;
}
view.top.css({
left: new_position_left + 'px',
top: new_position_top + 'px'
})
})
$(document).bind('mouseup', function (event) {
setting.cache.mouse_x = -1;
setting.cache.mouse_y = -1;
})
}。

相关文档
最新文档