IT戦記

プログラミング、起業などについて書いているプログラマーのブログです😚

Flash 10 で「はてなダイアリー」の「バックアップ機能」が使えない件とその原因

はじめに

はてなダイアリー」大好きっこの amachang です。
はてなダイアリー」には、「バックアップ機能」という機能があってこれがめっちゃ便利です!

バックアップ機能とは

よく、 mixi とかで「せっかく書いたのに日記消えちゃいました><」的な日記をよく見ますよね。
あれをなくしてくれる機能なのです。
その機能は「日記を書く」ページ(http://d.hatena.ne.jp/edit)の一番下にあります。

しかし

Flash 10 では、以下のような状態になってしまい。バックアップ機能が使えません><

これは困りました><

その原因

http://d.hatena.ne.jp/js/local_storage.js で、 Flash のバージョンを以下のように見ている箇所があって、

navigator.plugins["Shockwave Flash"].description.charAt(16)

この

navigator.plugins["Shockwave Flash"].description

の値が Flash 10 では

"Shockwave Flash 10.0 r12"

みたいな値になる。
当然、それの .charAt(16) は "1" となって、

         ____   
       / \  /\ キリッ
.     / (ー)  (ー)\      
    /   ⌒(__人__)⌒ \    <  "Shockwave Flash 10.0 r12".charAt(16) は "1"!
    |      |r┬-|    |      Flash のバージョンは 1 !
     \     `ー'´   /
    ノ            \
  /´               ヽ              
 |    l              \
 ヽ    -一''''''"〜〜``'ー--、   -一'''''''ー-、.    
  ヽ ____(⌒)(⌒)⌒) )  (⌒_(⌒)⌒)⌒))

ということになってしまっている。

(追記)すでにアイデアにあるみたいですね

(追記)だいぶ前から言われてたみたいですね><

はやく直して欲しいです><
.charAt(16) を .match(/\d+/)[0] にすればいいだけだと思うます><