[MTurk Worker] Workspace Expander

Expands accepted HITs to fill the browser viewport, scrolls to the HIT and focuses it.

目前為 2018-12-01 提交的版本,檢視 最新版本

您需要先安裝使用者腳本管理器擴展,如 TampermonkeyGreasemonkeyViolentmonkey 之後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyViolentmonkey 後才能安裝該腳本。

您需要先安裝使用者腳本管理器擴充功能,如 TampermonkeyUserscripts 後才能安裝該腳本。

你需要先安裝一款使用者腳本管理器擴展,比如 Tampermonkey,才能安裝此腳本

您需要先安裝使用者腳本管理器擴充功能後才能安裝該腳本。

(我已經安裝了使用者腳本管理器,讓我安裝!)

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展,比如 Stylus,才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

你需要先安裝一款使用者樣式管理器擴展後才能安裝此樣式

(我已經安裝了使用者樣式管理器,讓我安裝!)

// ==UserScript==
// @name         [MTurk Worker] Workspace Expander
// @namespace    https://github.com/Kadauchi
// @version      1.0.4
// @description  Expands accepted HITs to fill the browser viewport, scrolls to the HIT and focuses it.
// @author       Kadauchi
// @icon         http://i.imgur.com/oGRQwPN.png
// @include      https://worker.mturk.com/projects/*/tasks/*?assignment_id=*
// @include      https://worker.mturk.com/projects/*
// ==/UserScript==

function expandWorkspace() {
  const captcha = document.querySelector('img[src^="https://opfcaptcha-prod.s3.amazonaws.com/"]');
  const workspace = document.querySelector('#MainContent');
  const taskRow = document.querySelector('.task-row');
  const taskPreview = document.querySelector('.task-preview');
  const iframe = document.querySelector('.task-question-iframe-container');

  if (!captcha) {
    if (workspace) {
      workspace.style.height = '100vh';
      workspace.scrollIntoView();
    }

    if (taskRow) {
      taskRow.style.height = '100vh';
      taskRow.scrollIntoView();
    }

    if (taskPreview) {
      taskPreview.style.height = '100%';
      taskPreview.scrollIntoView();
    }

    if (iframe) {
      iframe.style.height = `100%`;
      iframe.scrollIntoView();
      iframe.querySelector('iframe').focus();
    }
  }
}

function moveFooters() {
  const hr = document.querySelector('hr.footer-horizontal-rule');
  const div = document.querySelector('div.work-pipeline-bottom-bar');
  const footer = document.querySelector('footer');

  document.body.insertBefore(hr, footer);
  document.body.insertBefore(div, footer);
}

expandWorkspace();
moveFooters()