JavaScript
Mentimeter

Mentimeterの回答一覧をブックマークレットでまとめる

More than 1 year has passed since last update.

Mentimeter(Question typeが"Open Ended"の質問)で集めた回答リストをまとめるためのブックマークレットを作りました.
Mentimeterのhtml変更によってそのうち動かなくなる可能性はあります.
とりあえず回答数50程度で動作確認しています.(追記:111個でも動くこと確認しました.)

環境

  • Chrome 61
  • Firefox 57(たぶんセキュリティの問題でブックマークレットとしては動きませんでしたが,Webインスペクタのコンソールに直接貼ると動作しました)

コード

javascript:
var ans = document.getElementsByClassName('one-by-one__item');
var ansText='';
[].forEach.call(ans, function(e) {
  ansText += e.textContent.trim();
  ansText += '\n----\n';
});
var onebyoneWrapperDiv = document.getElementsByClassName('one-by-one__wrapper')[0];
var textbox = document.createElement('textarea');
textbox.setAttribute('rows', '10');
textbox.setAttribute('cols', '200');
textbox.textContent = ansText;
onebyoneWrapperDiv.insertBefore(textbox, null);

使い方

  • 上のコードを全部1行に繋げて,それをURLとしてブックマークに登録します.

繋げたコード

javascript: var ans = document.getElementsByClassName('one-by-one__item'); var ansText=''; [].forEach.call(ans, function(e) { ansText += e.textContent.trim(); ansText += '\n----\n'; }); var onebyoneWrapperDiv = document.getElementsByClassName('one-by-one__wrapper')[0]; var textbox = document.createElement('textarea'); textbox.setAttribute('rows', '10'); textbox.setAttribute('cols', '200'); textbox.textContent = ansText; onebyoneWrapperDiv.insertBefore(textbox, null);
  • Result layoutを"One by one"にして"▶Present"を押してプレゼンテーションモードにします
  • 登録したブックマークを開きます
  • こんな感じ↓にテキストエリアが現れて,全回答が連結されたテキストが取得できます

menti-matome.png

  • プレゼンテーションモードにしなくてもテキストエリアは出現しますが,プレゼンテーションモードにしないとテキストエリアの内容がコピーできません