Skip to content

Instantly share code, notes, and snippets.

@kurumigi
Created November 14, 2009 14:57
Show Gist options
  • Save kurumigi/234567 to your computer and use it in GitHub Desktop.
Save kurumigi/234567 to your computer and use it in GitHub Desktop.
[GM Script]Movie Player Select on NHK News
// ==UserScript==
// @name Movie Player Select on NHK News
// @namespace http://d.hatena.ne.jp/kurumigi/
// @description 「NHK ニュース」にて、動画形式の選択ができなくなる現象を回避します。(参考URL:http://d.hatena.ne.jp/nyama/20090809/1249808014)
// @include http://www*.nhk.or.jp/news/parts/player/select.html
// @require http://gist.github.com/3242.txt#dollarX.js
// ==/UserScript==
(function() {
// =====
// from http://gist.github.com/29681
// very simple version of $X
// $X(exp);
// $X(exp, context, resolver, XPathResult.NUMBER_TYPE).numberValue;
// @source http://gist.github.com/29681.txt
function $X (exp, context, resolver, result_type) {
context || (context = document);
var Doc = context.ownerDocument || context;
var result = Doc.evaluate(exp, context, resolver, result_type || XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
if (result_type) return result;
for (var i = 0, len = result.snapshotLength, res = new Array(len); i < len; i++) {
res[i] = result.snapshotItem(i);
}
return res;
}
// =====
var movieTypes = ['flv', 'wmv384', 'wmv56'];
var item = $X('//ul[@class="menu"]/li');
for (var i = 0; i < item.length; i++) {
(function(n) {
item[i].addEventListener('click', function() {
unsafeWindow.switchPlayerBySelect(movieTypes[n]);
unsafeWindow.setCookie(movieTypes[n]);
unsafeWindow.close();
}, true);
})(i);
}
})();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment