週刊しいたけ占いがついに復活しましたね、しいたけ占いは読んでいて元気が出たり励まされたりするので好きです。
ということで今週の自分の星座のしいたけ占いにバチっと一発でアクセスしたい*1ので、ブックマークレットを書きました。*2
コピペ用のコードはGistを眺めていただくとして、シンプルなコードではあるのですが微妙に引っかかったところの知見でもまとめておこうと思います。
最初はわりとスタンダードなお作法(?)に従ってこんな風に書いてたんですが、これだとブランクタブでは動作しないという罠に引っかかりました。
(読みづらくて仕方ないので以降のコードは適宜改行とインデントを入れています)
javascript:(function(){ const thisMonday = new Date(); const dayOfWeek = thisMonday.getDay(); const subDate = dayOfWeek === 0 ? 6 : dayOfWeek - 1; thisMonday.setDate(thisMonday.getDate() - subDate); window.location.href = `https://shiitakeuranai.jp/weekly-horoscope/${thisMonday.getFullYear()}-${(thisMonday.getMonth() + 1).toString().padStart(2, %270%27)}-${thisMonday.getDate().toString().padStart(2, 0)}/pisces/`; })();
ありがたいことに対処法を記事にしている方がいたので、 neos21.net
参考にして(というかそのまま真似して)こんな風に修正しました。
data:text/html, <script> const thisMonday = new Date(); const dayOfWeek = thisMonday.getDay(); const subDate = dayOfWeek === 0 ? 6 : dayOfWeek - 1; thisMonday.setDate(thisMonday.getDate() - subDate); window.location.href = `https://shiitakeuranai.jp/weekly-horoscope/${thisMonday.getFullYear()}-${(thisMonday.getMonth() + 1).toString().padStart(2, %270%27)}-${thisMonday.getDate().toString().padStart(2, 0)}/pisces/`; </script>
その他注意点というかあんまり真面目に考慮していない点としては、おそらくまだページが公開されていないであろう月曜の日付が変わった直後にこのブックマークレットを使うと問答無用でその日公開されるはずのURLを見に行って404になっちゃうかもね、というあたりですかね。
来週あたり公開時間を何となく推測してその時間前であれば先週のページを、とかやってもいいのかもですが、最新の占いを見たくてアクセスしてるのに先週の占い見てもという気もしますし、正直個人的に困ってないのでそこまで頑張らなくてよいのかなと思っています。
よいしいたけ占いライフをお送りください。