Adds a link to search for the trailer on Youtube after the app title
当前为
// ==UserScript==
// @name Steam: add Youtube trailer link
// @include http://store.steampowered.com/app/*
// @include https://store.steampowered.com/app/*
// @description Adds a link to search for the trailer on Youtube after the app title
// @version 1.0
// @author wOxxOm
// @namespace wOxxOm.scripts
// @license MIT License
// @grant none
// @run-at document-start
// ==/UserScript==
setMutationHandler(document, '.apphub_AppName', function(observer, node) {
var yt = document.createElement('div');
var link = 'https://www.youtube.com/results?search_query=' + node.textContent.replace(' ','+') + '+trailer';
node.parentNode.insertBefore(yt, node);
yt.outerHTML =
'<div class="apphub_OtherSiteInfo" style="margin-right:1em">\
<a class="btnv6_blue_hoverfade btn_medium" href="' + link + '">\
<span>trailer on Youtube</span>\
</a>\
</div>';
observer.disconnect();
return false;
});
function setMutationHandler(baseNode, selector, cb) {
var ob = new MutationObserver(function(mutations){
for (var i=0, ml=mutations.length, m; (i<ml) && (m=mutations[i]); i++)
for (var j=0, nodes=m.addedNodes, nl=nodes.length, n; (j<nl) && (n=nodes[j]); j++)
if (n.nodeType == 1)
if (n = n.querySelector(selector))
if (!cb(ob, n))
return;
});
ob.observe(baseNode, {subtree:true, childList:true});
}