/* * @title ツタヤ在庫一括表示 * @description TSUTAYAの店頭在庫検索結果でこれを使うと表示されてる店舗の在庫を一括で取得し結果を表示します 巡回速度1/(0.5+res)[page/s]にしてあるので最短10秒かかります 詳しい使い方の説明は http://1mu.info/texts/tsutayalet/ * @include * @license * @require jQuery */ var wait = 500; var url; if (url = location.href.match(/^http:\/\/as\.chizumaru\.com(\/tsutaya\/articleList\?.*)$/)) { document.body.innerHTML = "
3秒後移動します。移動先でもう一度実行してください"; setTimeout(function() { location.href = "http://store-tsutaya.tsite.jp" + url[1]; }, 3000); } else if (!/^http:\/\/(?:store-tsutaya\.tsite\.jp|store\.tsutaya\.co\.jp)\/tsutaya\/articleList\?/.test(location.href)) { if (confirm("TSUTAYAのページに移動しますか")) location.href = "http://store.tsutaya.co.jp/"; } else if (window.isGetting) { if (confirm("取得を中止しますか")) window.isGetting = false; } else { var links = document.links, storeLinks = []; for (var i = 0, link; link = links[i]; ++i) if (/^http:\/\/(?:store-tsutaya\.tsite\.jp|store\.tsutaya\.co\.jp)\/item\/[^\/]+\/\d+\.html\?storeId/.test(link.href)) storeLinks.push(link); window.isGetting = true; (function getStockInfo() { if (window.isGetting && (window.isGetting = storeLinks.length)) (function (link) { var t = link.parentNode.insertBefore(document.createTextNode("取得中..."), link.nextSibling); setTimeout(function () { $.ajax({ type: "GET", url: link, dataType: "text", success: function(data){ var m = data.match(/在庫状況:([^<]+)<\/span>/); if (m) t.nodeValue = m[1]; }, error: function () { t.nodeValue = "取得失敗";}, complete: getStockInfo }); }, wait); })(storeLinks.shift()); })(); }