ニコニコ動画のマイリストページに共起タグクラウドを表示するGreasemonkey
ニコニコ動画の検索ページに共起タグクラウドを表示するChrome用ユーザスクリプト作ってみた – あたご型護衛艦日記 : http://d.hatena.ne.jp/aTaGo/20100112/1263285275
という便利なものがあったので公開マイリストページにもタグクラウドを表示するGreasemonkeyを書いてみた。
// ==UserScript==
// @name Mylist TagCloud
// @namespace https://efcl.info/
// @include http://www.nicovideo.jp/mylist/*
// ==/UserScript==
evalInPage(function(){
var as = my.currentItems
var ids = "";
if(as.length > 1){
insertcallback();
for(var i = 0; i < as.length; i++){
var smid = as[i].item_data.video_id;
ids += smid + "+";
}
//console.log(ids);
var uri = "http://nicotag.sakura.ne.jp/getcollocationtag.php?smid=" + ids + "&rand=" + Math.floor(Math.random()*1000);;
calljsonp(uri);
}
function calljsonp(uri){
var scr = document.createElement('script');
scr.type = "text/javascript";
scr.src = uri;
document.body.appendChild(scr);
}
function insertcallback(){
var callscr = document.createElement('script');
callscr.type = "text/javascript";
callscr.text = ''
+ 'function callback(val){'
+ 'var footer = document.querySelectorAll("div#SYS_box_mylist_body");'
+ 'var foot = footer[0];'
+ 'var div = document.createElement("div");'
+ 'div.innerHTML = val;'
+ 'foot.parentNode.insertBefore(div, foot);'
+ '}';
document.body.appendChild(callscr);
}
})
function evalInPage(fun) {
location.href = "javascript:void (" + fun + ")()";
}
JSONPでしか取得できないような気がしたので、ほぼそのままな感じ。
確かめてないけどChromeでも動くかも。
お知らせ欄
JavaScript Primerの書籍版がAmazonで購入できます。
JavaScriptに関する最新情報は週一でJSer.infoを更新しています。
GitHub Sponsorsでの支援を募集しています。
