向けのライブラリを使っている。その中のほんの一部の機能しか使っていない。コンパクトな代替がないかと考えていた。最近なにげなくググっていたら、以下のページを見つけた。氏のスクリプトは前に試そうとして使い方がよくわからなかった。触るようになったので今回はすんなりと利用できた。利用しておしまいでは理解したとはいえないので、学習のためにソースをリファクタリングしつつコメントを付けてみた。サンプルもそれに準じる。表示するとこんな感じになる。正しく動作することを確認したので、今度は他のサイトの画像とか読んだらどうなるのかなと試してみたら読み込まれない。ハンドリングすると確かにエラーが発生している。悩みながら色々なキーワードでググってみたところ、どうやらクロスドメインの問題にひっかかっているようだ。スクリプトを読み込んでいるページと同じドメインの画像を指定しないと正しく読み込まれずエラーとなる。この問題と解決方法は以下のページが分かりやすかった。この問題を解決するのは無理っぽいことが分かった。よる解決をおこなえそうだ。次に更新することがあったら検討してみたい。読み込み手段としてかなり有用。みたいな写真共有サービスを作るときなどに役立ちそうだ。2010-05-04T08:56:02Zほんとにすごい人がいますね。始めたばかりなので右も左も分かりません。データの時は動きません。IEで、NikonやOlympusの時は動きます。読み込むところがおかしいのかな、とは思いますが、さっぱり分かりません。おわかりになれば解決策をお教えください。2010-05-04T10:47:58Zデモを拝見させていただきました。上手く動いていませんね。情報を、この記事で公開しているスクリプトで表示するデモを作成してみました。文字列の末尾が化けて表示されるようになりました。データ長の取得あたりに問題がありそうな気がします。引き続きよろしくお願いします1.IEちょっと別件なのかもしれませんが、akabekoさんのIEと私のIEの反応が違うようなのです。私はWin-7-64のIE8です。bananaのデモをローカルで見ますとIEではEXIFが出ません。Firefoxでは出ます。IEでWebでは、Canonのデモはおっしゃるようにnullが出ません。ローカルではIEでもnull文字が出ます。動作が変わっています。残しておいてほしいのです。多くの絵のあるページですべてを2度読み込むことを避けたいのです。http://210.155.219.234/Lib/Lib-N24.htmの例ではEXIFを見る人はそう多くはないでしょうから。);}のように使いたいのです。データをダンプして解析してみました。部分はTagの中でデータ長が32バイトとなっています。データの中身は32バイトのうち後半の部分にx00が12個あります。exif.jsで混乱しているのではないかと思います。akabekoさんのデモで、Model名の後ろに余分な文字が出ているのはおそらくこのnullが化けたものでしょう。使った場合、Model名までしか出なかったのもx00があるからだと思います。iNumValues-1).replace("\X00","");としてみましたが動作しませんでした。いいところまで迫っているような気はするのですが。2010-05-05T09:25:09Z質問への返答です。実装が異なるので、そのあたりが挙動の差となっているのかもしれません。動作が変わっています。情報を埋め込んだものとなります。相当の機能は残しています。2010-05-05T09:57:48Z補足です。いうプロパティとして追加しています。情報の記録と共に、読み込み済みであることを示すフラグとしても使用できます。読み込みを開始します。メソッドで原作版と同様のチェックと読み込みをおこないます。メソッドのみで提供していることになります。設計的には、原作版はユーティリティ的、変更版がオブジェクト的だと思います。メソッドに振り分けました。データ取得をおこなえると思います。2010-05-05T10:39:18Zもう一つ、補足です。このブログのコメント欄は承認制になっているため、送信してもすぐには反映されません。承認を解除することも可能なのですが、コメント方式のスパムが大量に書き込まれるため、やむを得ず、この設定で運用しています。分かりにくくて申し訳ないのですが、ご理解をおねがいします。2010-05-05T13:05:48Z御協力ありがとうございました。分からないことだらけですが、出るようになりました。Case2のところで、replace("x00","")をやったのですが、replaceは全部の同じ文字を交換するものとばかり思っていました。一文字しかしないことが分かり、全部交換したらIEでもうまく表示されるようになりました。