とりあえず福島県の共通ユーザスクリプト(書名検索版以外)をAmazonプライムに対応してみた
変更点
- 「Amazonプライム」開始に伴うレイアウト変更対応
- 開始以前のリンクの挿入位置ではリンクが表示できない、且つ、プライム対象商品と対象外商品(ログインしていない場合も)では挿入位置が異なる
- プライム対象商品の場合だけ存在するID(expjptimedButton)の有無でどちらの挿入位置にするかを判断、プライム対象商品は3番目のClass='buying'、対象外とログイン指定ない場合は2番目のClass='buying'
→最初、HTMLのソースだけ見ていてどちらも2番目のClass='buying'で大分悩んだが、SleipnirのAddonのHarkeyeで「クリックした要素の詳細を表示」機能を使うと表示されている時点では位置が変わっていることに気がつき(Javascriptで書き換えていた)で、ボタンにIDが振られていたので判断材料になったという経緯です
- ついでにinnerHTMLでやっていたのを、キチンとDOMを使うように書き換えた(createDocumentFragmentを使って最後にappendChildするようにしてみたが、正直早くなったかは微妙)
確認したパターン
ブラウザ | Logout状態 | プライム対象 | プライム対象外 | ベストセラー | 関連商品を見る |
---|---|---|---|---|---|
IE6 | |||||
IE7 | |||||
Firefox2.x |
ユーザスクリプトの一覧とダウンロード先
地区コード | 図書館名 | 共通 | 備考 |
---|---|---|---|
福島県立図書館 | fukushima_p.1.3.user.js | ||
福島市立図書館 | fukushima.1.3.user.js | ||
会津若松市立図書館 | wakamatsu.1.3.user.js | ||
郡山市図書館 | koriyama.1.3.user.js | ||
いわき市立図書館 | iwaki.1.3.user.js | ||
須賀川市図書館 | sukagawa.1.3.user.js | ||
喜多方市立図書館 | kitakata.1.3.user.js | ||
南相馬市図書館 | minamisoma.1.3.user.js | ||
本宮市立しらさわ夢図書館 | shirasawa.1.3.user.js | ||
南会津図書館 | minamiaizu.1.3.user.js | ||
西会津中学校図書館 | nishiaizu.1.3.user.js | ||
三春町民図書館 | miharu.1.3.user.js | ||
広野町公民館図書室 | hirono.1.3.user.js | ||
富岡町図書館 | tomioka.1.3.user.js | ||
浪江町図書館 | namie.1.3.user.js | ||
新地町図書館 | shinchi.1.3.user.js |
備考
書名検索版とGreasemonkey専用の検索結果表示版はただいま鋭意製作中です、一個パターンが出来れば後はコピー&ペーストで展開していくだけなんですけどね。
[追記]
正確に変更になったリンクの追加位置を書くと
-
- Amazonプライム対象商品の場合は'expjptimedButton'というidを持つノードが存在する
- 存在する場合はClassNameが'buying'のノードの3番目、存在しない場合は2番目のノードの中の、さらにClassNameが'sans'の先頭のノードが書名
- 書名のノードに対してappendChildでリンクを追加する