すなばいじり

はてなブログを使って、トンピーを揃えるまで止めないブログ。ふっくらかわいい。

読み込みをブロックするスクリプトをどうにかしたい

ちょっと弄ると回避できるお話だったりするのですが、

月中ボスタイム。アクセス急減に見る危機回避意識。 - マネー報道 MoneyReport

xreaが調子悪くて30秒ほど待たされるブログがちらほらありますね。(ブロックするような場所にコードが置いてあるのが問題)

2015/07/15 13:11


xreaが調子悪くて30秒ほど待たされるブログがちらほらありますね。(ブロックするような場所にコードが置いてあるのが問題) - psne のコメント / はてなブックマーク

 

この書き方の場合、次の障害の時に「最後まで表示されているけど何だか表示できなくて画面固まってる」状態になってしまうので補足。

 

非同期に読み込みさせればおそらく解決

f:id:psne:20150716192542j:plain

読み込むまで画面表示を停止させる書き方になっているので、

<script src="http://example.com/" type="text/javascript" async ></script>

asyncと追加すれば「後でスクリプトを読む」という感じになります。
しかし、よく見るとグローバルな部分に「ID」や各種設定の変数が存在しているので、何か別のスクリプトが先に読み書きをして値が変わってしまうと、それはそれで上手く動かなくなって辛いという事が予想されます。

時代的な流れや古いブラウザのサポート等で仕方がなかったんだ という部分が想像できます。

 

■貼り付けHTMLを改変してもいい?
一切の改変を禁止しております。ユーザー削除となる場合がありますので、公式なオプション以外の変更は行わないで下さい。 

色々ありますが、しょうがないですねぇ。という感じです。
もう少し柔軟な設定ができる作りであれば、記事ごとのIDを勝手に振り出したり、トラブル時の回避が容易であったりと色々できるかと思います。

素直にフッタ周辺に置くのが最善でありそうです。(規約的に)

*1

 

この辺りはGoogleさんのところがよく出来ていて「こうやって動いているのか」と眺める事ができます。ドキュメントは英語です。

 

NEW リズムでともだち こぐまのトンピー

NEW リズムでともだち こぐまのトンピー

 

 

*1:実際に「こうすれば良い」という解決法は有るのですが、検証する時間が無い事や「やるな」といっている部分を無視するのもどうかと思うので、書きません。
自分が使っていないという事も大きい。