はじめに。
取引ナビでは 上から「名前→郵便番号→住所」となっており宛名シールに印刷するためのものとしては順番がおかしく、若干の編集が必要なため、わずかに その手間を減らすために作ったものです。
住所に建物名が くっついていたり、住所そのものが やたら長かったりする場合もあるので、結局 編集は必要です。
このブックマークレットでコピーし、それを宛名シール印刷ソフトにペーストする。という使い方をしています。
ちなみに、俺が使ってるのは A-one の ラベル屋さん9です。
動作確認環境
Windows 10
Google Chrome 67
使い方。
※ 取引ナビで「発送連絡をする」ボタンが表示されている画面で使用することを想定しています。特定の行を決め打ちで取得してきているため、別の画面では正常に取得できません。(2018-09-22 追記)
取引ナビで このブックマークレットを起動。
コピーされた内容が、Toastもどきで表示されるので、一応 目視で確認。
それを、宛名シール印刷ソフトへペースト。
そして、若干の編集。
※ 定形外で使うことを想定しており、ゆうパケット(おてがる版)などでは正常に動作しないことを確認しています。
コード。
特に難しいことはしていませんし、細かい説明はコードのコメントを読んでもらえれば分かるかと思います。
javascript:(function(){
/* 取引ナビから 名前 郵便番号 住所 を取得(メインは この三行だけ) */
var arrs=document.getElementsByClassName("decCnfWr");
var p= arrs[2].innerHTML;
var o=p.substr(0,4)+"-"+p.substr(4,4)+"\n\n"+arrs[3].innerHTML+"\n\n"+arrs[1].innerHTML+" 様";
/* 順序を 郵便番号 住所 名前 に(ついでに「様」も追加)したものを、クリップボードへコピー。 */
var ta = document.createElement("textarea");
document.body.appendChild(ta);
ta.value=o.toString();
ta.select();
if (document.execCommand("copy")) {
/* Toastもどき(正直、なくてもいい) */
var sc = document.scrollingElement.scrollTop;
var text = document.createElement("span");
text.innerHTML="クリップボードへコピーしました。<br><br>" + o.replace(/\n/g, '<br>');
var ts = text.style;
ts.color = '#000';
ts.backgroundColor = 'white';
ts.padding = '15px';
ts.border = '1px solid gainsboro';
ts.boxShadow = '3px 3px 10px';
ts.zIndex = '100';
document.body.appendChild(text);
ts.position = 'absolute';
ts.top = 50 + sc + 'px';
ts.left = (window.innerWidth / 2)-(text.offsetWidth / 2) + 'px';
setTimeout(function () { text.style.visibility = "hidden"; }, 1500);
}
document.body.removeChild(ta);
})()
おわりに。
一応、自分でも使ってますが、ちょいちょい手直しを加えていったものなので、どこか おかしいかもしれません。
なんか おかしな所を発見しましたら、ご一報ください。
こちらでも同じ現象が確認できた場合、修正します。(2018-09-22 追記)