JavaScript

[twitter]dokoitter どこいったー?

おつかれさまです。

追記
※このコンテンツは2010年6月30日のTwitterのBASIC認証廃止と同時に使用不可になります。
TwitterのBASIC認証廃止、企業ユーザーが知っておくべきこと

twitterの設定で「ツイートに位置情報を入れる」にチェックしても
位置情報を一緒に送信してくれるものが手元に無かったので作りました。
モバツイのイマココでは出来ませんでした。
未確認ですがiPhoneを持ってる人は、GPSTwitあたりを使えば位置情報を
送信、確認できると思います。
dokoitterPCバージョンならGoogleMapで位置を指定して送信できます。
とりあえずどんなものか見たいって人は、ユーザ名に「frasio_report」と入れて、
パスワードは何も入れずにログインをクリックしてみてください。



今回JSONデータ形式とか、モバイルサイトの作り方とか、GoogleMapVersion3とか、
PHPの暗号化、復号化とか、OAuth認証とか
やってたら工数が倍になり、制作に2週間もかかってしまいました。
得るものはたくさんあってなかなか楽しかったです。

モバイルサイトのほうは下記の機種で動作を確認しました。
新しめの携帯なら使えると思いますが、よくわかりません。

au : W53CAで動作を確認しました。
docomo : iモードHTMLシミュレータIIで動作を確認しました。(あてになるのかなこれ)
 ※追記 うまく動かなかったのを修正しました。P906で動作を確認しました。
SoftBank : 820SHで動作を確認しました。
willcom : 確認してません。情報求む。

使い方は下記を参照してください。




今回参照したサイト一覧(順不同)

PHP: PHP マニュアル
http://www.php.net/manual/ja/

Raizlabs – GPS Twit
http://www.raizlabs.com/software/apps/gpstwit

The Google Maps API V3 – Google Maps JavaScript API V3 – Google Code
http://code.google.com/intl/ja/apis/maps/documentation/v3/

Google Code – Google Maps API
http://code.google.com/intl/ja/apis/maps/

SDN Project – PHP+OAuthでTwitter
http://www.sdn-project.net/labo/oauth.html

そふぃのphp入門
http://nyx.pu1.net/

Twitlogo
http://www.twitlogo.com/

[観] Twitter API 仕様書 (勝手に日本語訳シリーズ)
http://watcher.moe-nifty.com/memo/2007/04/twitter_api.html

りょーちの駄文と書評 – Twitter APIをphpで使う方法(サンプル)
http://ryouchi.seesaa.net/article/40073217.html

Knowledge Database IT – 3キャリアごとのXHTML用ドキュメントタイプ
http://it.kndb.jp/entry/show/id/2393

携帯GPS機能が扱えるPEAR::Net_UserAgent_Mobile_GPSを使ってみました | 携帯サイトをつくろう。
http://www.plusmb.jp/2008/12/19/1816.html

ウノウラボ Unoh Labs: PHPで暗号化・復号あれこれ
http://labs.unoh.net/2007/11/php_de_crypt.html

Net_UserAgent_Mobile
http://pear.php.net/package/Net_UserAgent_Mobile

GPS携帯 位置情報 基礎知識
http://www.yaskey.cside.tv/mapserver/note/gps.html

PHP TIPS:ITpro – 96. 携帯電話でGPSデータを取得してみよう
http://itpro.nikkeibp.co.jp/article/COLUMN/20080703/310053/

QRコード(二次元バーコード)作成【無料】
http://www.cman.jp/QRcode/

3キャリア対応サイトを作る 携帯サイトを作ろう! -ちょっと詳しいモバイルサイトの作り方-
http://dspt.blog59.fc2.com/blog-category-5.html

CSS Lecture – CSSで中央配置(センターリング)する方法
http://www.css-lecture.com/log/css-beginner/026.html

加藤貴之Wiki – howto/RSA
http://katotakayuki.jp/wiki/index.php?howto/RSA

Schwarz Lanzenreiter – 暗号化アルゴリズム Blowfish を JavaScriptで
http://user1.matsumoto.ne.jp/~goma/js/blowfish.html

【HTMLタグの簡単検索】TAG index – ホームページ作成情報
http://www.tagindex.com/index.html

Load Info – gif generator
http://loadinfo.net/

NTTドコモ – iモードHTMLシミュレータII
http://www.nttdocomo.co.jp/service/imode/make/content/browser/html/tool2/

さて、次もtwitter関連で行こうと思います。

[CSS3]interface4 on CSS3

ええ、そうです。お察しの通りネタ切れです。

WindowsXPの下記のブラウザで動作を確認しました。
これら以外のブラウザは正しく動作しない可能性が高いです。
Safari 4.0.4
Google Chrome 4.0.249.89
SRWare Iron 4.0.280

右リング上でマウスホイール:リング回転
右リング以外でマウスホイール:リング前後

interface4 on CSS3


さて、次は何を作ろうか。

[JavaScript]painting on canvas

マウスで絵を描く→pngで保存 というものです。
jsとphpで出来ています。
「保存」を押したときのリアクションはtwitterっぽくしてあります。
canvasタグの使い方はこちらが詳しいです。HTML5.jp – Canvas
「みんなの絵を見る」機能無しのflashバージョンはこちら[Flashからjpg]

HTML5.jpによると下記の環境で動きます。IEは論外。
Firefox 2以降
Safari 4以降
Google Chrome 2以降
Opera 9.2以降

キャンバスドラッグ:線を引く
「太」の数字変更:線の太さ変更
カラーパレットクリック:色選択
「保存」クリック:pngで保存
「消去」クリック:キャンバスを真っ白に
「みんなの絵を見る」:みんなの絵一覧
サムネイルクリック:pngオリジナルサイズを別ウィンドウで開く

painting on canvas


さて、次は何を作ろうか。

[JavaScript]rainbow on canvas

レインボーの線がボールに近づくとボールに引き寄せられます。
garakuta_archiveの3行目1列目のやつのjavascriptバージョンです。

IE以外の大抵のブラウザで動くはず。

ボールドラッグ:ボール移動

rainbow on canvas


さて、次は何を作ろうか。

[CSS3]trickart on CSS3

CSS3を始めて2週間が経ちました。
[Papervision3D]TrickArtのCSS3バージョンです。
2Dっぽいけど実は3Dだった というものです。
これだけ画像使うとさすがにちょっと重いか。

WindowsXPの下記のブラウザで動作を確認しました。
これら以外のブラウザは正しく動作しない可能性が高いです。
Safari 4.0.4
Google Chrome 4.0.249.89
SRWare Iron 4.0.280

画像クリック:カメラ移動

trickart on CSS3


さて、次は何を作ろうか。

[CSS3]skew

CSS3を始めて10日が経ちました。
CSS3では新しいプロパティが追加されていますが、
その中のskewプロパティを活かしたものを作ってみました。
jQueryなどのライブラリを使わず全て自作しました。

WindowsXPの下記のブラウザで動作を確認しました。
これら以外のブラウザは正しく動作しない可能性が高いです。
Safari 4.0.4
Google Chrome 4.0.249.89
SRWare Iron 4.0.280

ステージでマウスホイール:カメラ上下
円柱上でマウスホイール:円柱回転

skew


CSS3で3Dにする場合
transform-styleの値をpreserve-3dにして、
rotateYを変化させれば立体的に回転してくれます。
しかし、カメラが動くことを想定して、パースを合わせるためにoriginYの値を
3D処理毎に変化させると これがまた重い。異常に重い。
こんな感じになる。preserve-3dバージョン
そこで今回は、skewとrotateに同じ値を入れると縦方向にシアーがかかるので
これを利用してパースをつけています。
3D座標から2D座標にプロットするやり方はこちらのエントリーを。

さて、次は何を作ろうか。

[CSS3]scale

CSS3を始めて一週間が経ちました。
新しく手に入れたおもちゃのようにCSS3で遊び続けています。
CSS3では新しいプロパティが追加されていますが、
その中のscaleプロパティを活かしたものを作ってみました。
画像の拡大縮小がとてもスムーズ、動作も軽くてとても良いですね。
jQueryなどのライブラリを使わず全て自作しました。

WindowsXPの下記のブラウザで動作を確認しました。
これら以外のブラウザは正しく動作しない可能性が高いです。
Safari 4.0.4
Google Chrome 4.0.249.89
SRWare Iron 4.0.280

マウスホイール:ズームインアウト
ドラッグ:日本移動

scale


さて、次は3Dかな?

[CSS3]rotate

CSS3を始めて3日が経ちましたので早速一つ公開します。
CSS3では新しいプロパティが追加されていますが、
その中のrotateプロパティを活かしたものを作ってみました。
jQueryなどのライブラリを使わず全て自作しました。

WindowsXPの下記のブラウザで動作を確認しました。
これら以外のブラウザは正しく動作しない可能性が高いです。
Safari 4.0.4
Google Chrome 4.0.249.89
SRWare Iron 4.0.280

文字の上の丸をドラッグ:移動

rotate


さて、次は3Dにしてみようかな~

[JavaScript]JS like flash

ajaxでどこまでflashっぽくできるのか。
前回、前々回のエントリーはこのための開発でした。
今回モデルとしたflashはau design projectneonです。
jQueryなどのライブラリを使わず全て自作しました。

※第2弾[ajax]ajax like flash #02

ajax like flash


WindowsXPの下記のブラウザで動作を確認しました。
Firefox3.5
IE6,7(png8画像は劣化)
GoogleChrome4.0.249.78 (36714)
SRWare Iron4.0.280
Safari4.0

この制作で習得したことや感想
・工数はflashで作るときと同じかそれ以上
・ブラウザごとのチェック、調整が大変
・flashに比べて後からの変更に弱い
・FlashPlayerって実はすげー
OS、ブラウザを気にしなくてよい
画像系の処理スピードは圧倒的
・タイムラインって概念も実はすげー
アニメーションを作りやすい
処理のタイミングを調整しやすい
・IEは駄目な子
・クロージャの使い方
・レキシカルスコープを理解
・flashの自作クラスを多数移植
・visibilityプロパティはブラウザごとに調整がいる
・IEは駄目な子
・画像をCSSでリサイズするとChromeとIronがやたら重い
・IEだけsetIntervalのスピードが遅い
・CSSのプロパティ名はIEだけ違うものもある

さて、次はCSS3行ってきます。

[JavaScript]fill up

3時間くらいでササッと作ったものなんで
生暖かい目で見てください。
jQueryなどのライブラリを使わず全て自作しました。
元ネタはこちら

左が重い方は右へ

flash/other/13/ flash/other/14/r

応用編
四角クリック:対象矩形を fill up

追記:応用編2
縦横複合