Study.com Quiz Answers

Highlights correct answers with a green background on Study.com quizzes and exams

Устаревшая версия за 07.04.2021. Перейдите к последней версии.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey, Greasemonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Violentmonkey.

Чтобы установить этот скрипт, вы сначала должны установить расширение браузера, например Tampermonkey или Userscripts.

Чтобы установить этот скрипт, сначала вы должны установить расширение браузера, например Tampermonkey.

Чтобы установить этот скрипт, вы должны установить расширение — менеджер скриптов.

(у меня уже есть менеджер скриптов, дайте мне установить скрипт!)

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение браузера, например Stylus.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

Чтобы установить этот стиль, сначала вы должны установить расширение — менеджер стилей.

(у меня уже есть менеджер стилей, дайте мне установить скрипт!)

// ==UserScript==
// @name        Study.com Quiz Answers
// @namespace   Violentmonkey Scripts
// @match       *://*.study.com/*
// @include     https://study.com/*
// @grant       none
// @version     1.0
// @author      Jonah Lawrence
// @description Highlights correct answers with a green background on Study.com quizzes and exams
// ==/UserScript==

/* jshint esversion: 6 */

(function () {
	const interval = setInterval(function () {
		const container = document.querySelector("#practice-exam-container");
		// check if practice-exam-container element exists (only on exam pages)
	    if (container) {
	    	const controller = angular.element(container).controller();
	    	if (controller) {
		    	// get questions
		        const questions = controller.questionByQuestionInstanceId;
		        // highlight the answer to each question
		        Object.values(questions).forEach(function (x) {
		            const correctAnswer = document.querySelector(`li[ng-class*="${x.correctQuizQuestionOptionId}"]`);
		            if (correctAnswer) {
		                correctAnswer.style.background = "#c5ff81";
		                correctAnswer.style.borderRadius = "2px";
		                correctAnswer.style.boxShadow = "0 0 0 6px #c5ff81";
		                // no need to keep checking
	    				clearInterval(interval);
		            }
		        });
	    	}
	    }
	    else {
        // add styling for showing quiz answers
        const style = document.createElement('style');
        style.innerText = `
          label[data-correct="true"] {
              background: #c5ff81;
              box-shadow: 0 0 0 14px #c5ff81;
          }`;
        document.head.appendChild(style);
	    	// disable interval since this is not an exam
	    	clearInterval(interval);
	    }
	}, 500);
})();