タグ

2014年4月4日のブックマーク (2件)

  • 1ページAppでクローラに動的なメタ情報を読ませることが出来るか?

    このブログは1ページAppを目指して作っている(まだ完成していないがいずれは少数の静的ページに集約したいと思っている)。1ページAppはシングルページアプリケーション(SPA)とも言い、1ページのHTMLページ内で動的にコンテンツを切り替えていくアプリのことだ。 URLのパラメータやフラグメントを元に、Ajaxなどで動的にコンテンツをロードすることであたかもそれぞれのページが存在するかのように別々のコンテンツを表示する。 ここで問題になるのは、Googleなどのクローラはjavascriptを実行しないため、クローラに対してTitleタグやOGPなどのメタ情報をクライアント側で動的に出し分けることが出来ないということだ。これについて何か解決策がないか調べてみたのだが、結論としては、クローラなどにjavascrptで動的にメタ情報を付加することはやっぱり出来ないということだった。(そりゃそう

    1ページAppでクローラに動的なメタ情報を読ませることが出来るか?
  • AngularJS で外部javascriptを遅延読み込み

    新しいブログエンジンでもコメントシステムはDisqusを使っている。 Disqusは記事ごとにコメント欄を生成し埋め込んでくれる優れたサービスなのだが、実装方法としてはjavascriptをブログ内で読み込んで指定のタグにロードしたDOM要素を展開するという仕組みである。 Angular.jsはng-includeなどの仕組みで、HTMLテンプレートを動的に読み込みができ、HTMLをパーツとして使いまわすことができる。 しかし、このテンプレートを読み込む際にscriptタグが含まれていた場合はセキュリティのためか、scriptタグが無視されてしまう。 そのためDisqusのように外部スクリプトを埋め込んでDOM要素を生成するようなサービスとは相性が悪い。 しかし、皆考えることは同じようで、ハックを公開してくれた人がいたので参考にさせていただいた。 使い方は簡単でngLoadModuleとい

    AngularJS で外部javascriptを遅延読み込み