読み書きプログラミング

日常のプログラミングで気づいたことを綴っています

2012-10-01から1ヶ月間の記事一覧

iOS5マップ風ウェブアプリ、バージョンが確認できるようになりました

起動画面の右下にあるiボタン(地図のオプションを選択するボタン)をタッチすると、一番下にアプリのバージョンを表示するようにしました。 それだけです… 追記: 午後4時18分時点で、最新バージョンは1.2.2となりました。(アプリケーションキャッシュのデバッ…

iOS5マップ風ウェブアプリのGPS関連インジケータ

現在地追尾のボタンで位置情報取得の状態がわかるように修正しました。 位置情報取得の使用が許可されていない場合、淡いボタン 現在位置追尾中に、位置が取得できなかった場合、1秒毎の点滅 現在位置追尾中に、位置が取得が時間切れだった場合、2秒毎の点滅

less.tmbundleでCSSの保存

TextMate2にhttps://github.com/appden/less.tmbundleを導入すると、Save to CSSが機能しません。機能させるには、 Preference...->VariablesのPATHに、rubyとnodeとlesscが通るパスを設定し、チェックを入れる。 Save to CSSを以下に直す。 #!/usr/bin/env …

iOS5マップ風ウェブアプリに関するお知らせ

iOS6のためのiOS5マップ風ウェブアプリに関してです。 iOS6でこのアプリをウェブアプリ(全画面表示)の形で使うと、現在位置のトレース機能が動いていないことが判明しました。十分な評価が足らず申し訳ございません。 対策としては、Safari上で使っていただ…

iOS5マップ風ウェブアプリ、起動時間短縮しました。

ウェブアプリ(「ホーム画面に追加」)の状態で、起動時間に、iPhone 3GS/3G回線で20秒以上、WiFiで16秒掛かっていましたが、10秒強で起動するようになりました。(アプリケーションキャッシュを導入しました。)上位機種ならもっと速いです。 ストリートビュー…

iOS5マップ風ウェブアプリ、Panoramioが見られるようになりました。

iボタンから「Panoramioを表示」をクリックしてもらうと、上のようにPanoramioの写真が見られるようになりました。 Enjoy! http://y-ich.github.com/maps/maps.html追記: 19日の夜からiOSでストリートビューボタンがタッチできない状態でした。21日午前0時に…

JavaScriptパフォーマンスベストプラクティスその5

Nokia Developerより オブジェクト指向JavaScript 代わりの継承機構を検討すること JavaScriptではオブジェクト指向スタイルの継承をまねるたくさんの方法が存在する。しかし、継承をまねるすべての機構が似たように動くわけではない。 特にコードがオーバー…

JavaScriptパフォーマンスベストプラクティスその6

Nokia Developerより クライアント-サーバー通信 XMLHttpRequestにタイムアウトを設定すること ブラウザはXHR requestをある時間後タイムアウトするが、スクリプトの制御下で接続を中断することが有益なことがある。これはsetTimeout()を使って XHRコールに…

JavaScriptパフォーマンスベストプラクティスその7

Nokia Developerより アニメーション アニメーションは控えめにすること ハードウェアサポートのないアニメーションは遅い。本当の有用性の価値をもたらさない余分なアニメーションを避けるようにすること。少なくともユーザーにアニメーションを無効にする…

JavaScriptパフォーマンスベストプラクティスその8

Nokia Developerより イベント イベント委譲を使うこと もしイベントハンドラをバインドする必要がある新しい要素を動的にたくさん生成するなら、イベントハンドラを個々のオブジェクトに割り当てることは、すぐにことが大きくなって、高価になる。 複数のイ…

JavaScriptパフォーマンスベストプラクティスその9

Nokia Developerより スタイル CSSを最適化すること 部品ライブラリを作ること 一貫した意味論的スタイルを使うこと 内部で透明性を持つようにモジュールを設計すること 柔軟に グリッドが好きになるように学ぶこと セレクタを最小化すること 構造とスキンを…

JavaScriptパフォーマンスベストプラクティスその10を飛ばしてその11

Nokia Developerより jQuery固有 注意せよ!これらの最適化パターンはjQuery 1.2.6を対象にしている。最近のバージョンやSizzleセレクタエンジンはこれらのボトルネックのいくつかを軽減している。 NB! These optimization patterns are aimed at jQuery 1.2.…

JavaScriptパフォーマンスベストプラクティスその4

Nokia Developerより Document Object Model (DOM) の難解さ ソース: Efficient JavaScript - DOMDOMパフォーマンスの遅さは以下の3つの主な原因に遡ることができる: 大規模なDOM操作 DOM APIの大量の使用は遅さのよく知られた原因である。 スクリプトが多す…

JavaScriptパフォーマンスベストプラクティスその3

Nokia Developerより よりよいロードパフォーマンスの秘訣 より速いスタートアップとスプラッシュスクリーンの表示のためにはブロッキングなしにスクリプトをロードすること <script>タグがHTMLドキュメントの中に見つかると、参照されたスクリプトリソースをダウン…

JavaScriptパフォーマンスベストプラクティスその1

Nokia Developerよりこの記事はより速いウェブアプリケーションを構築するための価値あるガイドラインを与える。記事は様々なソースからのガイドラインの集合である。 This article gives valuable guidance for building faster web applications. The arti…

JavaScriptパフォーマンスベストプラクティスその2

Nokia Developerより コアJavaScriptの落とし穴 evalやFunctionコンストラクタの使用を避けること evalやFunctionコンストラクタの使用は、ソースコードを実行可能なコードに変換しなければいけないので、毎回スクリプトエンジンを呼び出すことになる高価な…

PhoneGapでカスタムURLスキーム

PhoneGapで作成したアプリにiOSのカスタムURLスキームを与える方法と注意事項です。 実装方法 1. 他のアプリ同様にInfo.plistにURLTypesというキーを追加して、その下に必要なキーを追加します。 (キーURL identifierとキーURL schemes) <key>CFBundleURLTypes</key> <array> <dict> <key></key></dict></array>…

ウェブアプリでローカリゼーション

Dashboardウィジェットをまねて以下のようにしました。1. localizedStringsを定義したja.jsなどを用意 var localizedStrings = {}; localizedStrings['Example'] = '例'; localizedStrings['Hello!'] = 'こんにちは!'; 2. html内でブラウザの言語に応じて上…

「ひとつずつ追う数式の答え」が拡張されました。使ってみましょう

WolframAlpha Blogから 「ひとつずつ追う答え」(Step-by-Step solution)はWolfram|Aphlaで数学関連の最も人気のある特長の一つですが、機能的に劇的に拡張されました!新しいインターフェースとともに、ひとつずつ追う答えのすべてを、一度に1段階だけ見る…

geolocationを使うのはdevicereadyのイベント後に

devicereadyを待たずにgeolocationを使うと、現在地使用許可のalertが2度出ます。

meta viewportがあると、document.body.scrollLeftにバグあり

(iPadではなく)iPhone Safariでmeta viewportを設定していると、document.body.scrollLeftに値を設定すると、アドレスバーが上部に消えて、クライアントスクリーンの右上がscrollLeft/scrollTopの原点になります。 対処考察中。

apple-mobile-web-app-capableにする際のiPhone5対応

ビューポートでwidthにdevice-widthもしくは相当の数字(320)を設定すると、「ホーム画面に追加」した際に、iPhone5だとフルスクリーンにならずに互換モード表示になります。 <meta name="viewport" content="width=device-width, ..." /> width指定は使わないようにしましょう。 widthはウェブページのレンダリング幅の</meta>…

iOS5マップ風ウェブアプリ大幅更新!

http://y-ich.github.com/maps/index.html 見た目を本物に近づけて、国際化(英語対応)も果たしました! 公開場所もGithubに移行。以下の機能が未実装です。 経路の複数表示と経路のリスト表示 (2012/10/16実装) 誤差にあわせた現在地マーカ範囲(2012/10/17実…

Google MapsのカスタムInfoWindow

CustomInfoWindowのインスタンスに対応するDOMはinfo-windowクラスを持つようになりますので、CSSで自由にデザインできます。描画位置はanchorの上です。drawを変更することで変えられます。onAddでclickイベントの伝搬を止めています。必要に応じて他のマウ…

iOS5マップ風ウェブアプリ、かなり頑張りました!

Googleのシュミット会長が「GoogleマップのアプリをAppleにまだ提出していない」と発言されてから10日経ちました。昨日はGoogleマップのモバイル版のストリートビュー対応が発表されて気になりましたが、触ってみて「もしかしたら負けてないかも」なんて思っ…

ツイートを読み上げるスクリプト

Twitterのフォロー数が多くなって、遡って読むことが多くなりました。それも一興ですが、本来、つぶやきのように流れていくのがTwitter。遡って読まなければいいじゃんと言われたらそれまでですが、それでいい情報を逃すのももったいないので、読み上げスク…