Hamazou shim
@@ -1,44 +1,39 @@
/*
- * @title Hamazou shim
- * @description prompt Diary Keyword link with img, like Hamazou; LGTM for Hatena Space
- * @include http://www.amazon.co.jp/*
- * @include http://d.hatena.ne.jp/asin/*
- * @contributor noromanba http://let.hatelabo.jp/noromanba/let/gYC-y8CR-5yPEw (Fork of)
+ * @title Amazon img + asin
+ * @description prompt minified Amazon link with img; LGTM for Hatena Space
+ * @include http://www.amazon.tld/*
* @license MIT License http://nrm.mit-license.org/2013
* @require
*/
// pair-script
-// http://let.hatelabo.jp/noromanba/let/gYC-y8CR-5yPEw
-
-// c.f. http://space.hatena.ne.jp/~/14217943783080751724#14290001378108728700
-
-// Amazon Android Apply Store has not '#ASIN', i.e. http://www.amazon.co.jp/dp/B00D80V2TM
-// alternate methods;
-// ((document.querySelector('[data-asin]') || {}).dataset || {})).asin
-// or parse URL like this code
-// c.f. http://space.hatena.ne.jp/~/14217943783080751724/14217943783080751726/93
+// http://let.hatelabo.jp/noromanba/let/gYC-y8DN9c28Rw
+// c.f. http://space.hatena.ne.jp/~/14217943783080751724#14217943783080751726+45
+// http://space.hatena.ne.jp/~/14217943783080751724/14290001378108728700/3
(function () {
- var asin, img;
- if (/^www\.amazon\.co\.jp/.test(location.hostname)) {
- asin = (location.pathname.match(/dp\/(\w+)/) || [])[1];
+ var tld, asin;
+ //*
+ if (!(tld = (location.hostname.match(/^www\.amazon\.([a-z\.]+)/) || [])[1]) ||
+ !(asin = (location.pathname.match(/dp\/(\w+)/) || [])[1])) {
+ return;
+ }
+ /*/
+ var meta = (location.href.match(/^https?:\/\/www\.amazon\.([a-z\.]+).*\/dp\/(\w+)/) || []).slice(1);
+ if (meta.length < 2) return;
- var query = {
+ tld = meta[0], asin = meta[1];
+ //*/
+
+ var query = {
'normal': '#prodImageContainer img',
'other' : '#main-image',
'kindle': '#kib-ma-container-0 img'
- };
- query = Object.keys(query).map(function (k) { return query[k]; });
-
- img = (document.querySelector(query) || {}).src;
- } else if ((asin = (location.href.match(/^http:\/\/d\.hatena\.ne\.jp\/asin\/(\w+)/) || [])[1])) {
- img = (document.querySelector('img.hatena-asin-detail-image') || {}).src;
- img = img.replace(/(_SL)\d+(_\.\w+)$/, '$1' + 300 + '$2');
- }
- if (!asin) return;
+ };
+ query = Object.keys(query).map(function (k) { return query[k]; });
+ var img = (document.querySelector(query) || {}).src;
// TODO display to textarea
// Firefox can't use linebreak within a prompt, so redandunt space ' \n' for avoid no-sep
- prompt('copy me', (img + ' \n' || '') + 'http://d.hatena.ne.jp/asin/' + asin);
-})();
+ prompt('copy me', (img + ' \n' || '') + 'http://www.amazon.' + tld + '/dp/' + asin);
+})();
/*
* @title Amazon img + asin
* @description prompt minified Amazon link with img; LGTM for Hatena Space
* @include http://www.amazon.tld/*
* @license MIT License http://nrm.mit-license.org/2013
* @require
*/
// pair-script
// http://let.hatelabo.jp/noromanba/let/gYC-y8DN9c28Rw
// c.f. http://space.hatena.ne.jp/~/14217943783080751724#14217943783080751726+45
// http://space.hatena.ne.jp/~/14217943783080751724/14290001378108728700/3
(function () {
var tld, asin;
//*
if (!(tld = (location.hostname.match(/^www\.amazon\.([a-z\.]+)/) || [])[1]) ||
!(asin = (location.pathname.match(/dp\/(\w+)/) || [])[1])) {
return;
}
/*/
var meta = (location.href.match(/^https?:\/\/www\.amazon\.([a-z\.]+).*\/dp\/(\w+)/) || []).slice(1);
if (meta.length < 2) return;
tld = meta[0], asin = meta[1];
//*/
var query = {
'normal': '#prodImageContainer img',
'other' : '#main-image',
'kindle': '#kib-ma-container-0 img'
};
query = Object.keys(query).map(function (k) { return query[k]; });
var img = (document.querySelector(query) || {}).src;
// TODO display to textarea
// Firefox can't use linebreak within a prompt, so redandunt space ' \n' for avoid no-sep
prompt('copy me', (img + ' \n' || '') + 'http://www.amazon.' + tld + '/dp/' + asin);
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。