スクリプトによるコントロール

スクリプトによるコントロール
フォームをJavascriptでコントロールする
input要素のtypeにnumberを指定すると
値を増減できるスピンボタンができる
スピンボタンの値の増減は
Javascriptでもできる
この処理は
stepUp()
stepDown()
を使うことで再現できる
例えばstepUp(2)なら
値が2増える
注意点としては
min,maxで指定した範囲外の数値でも入力てまきてしまうこと
これは、
入力チェックされるので、対処は可能

Android アプリなどの開発環境として
ドスパラでウルトラブックを購入し、これに Ubuntu 12.04 をインストールしました
最初の状態では、内蔵無線LANが認識しませんでしたが
カーネルアップデートにより、内蔵の無線LANが使えるようになりました
ちなみに、私が購入したのは、メモりが8GBのタイプです
メモりを多めにしたのは、VMware Player や VirtualBox などの仮想マシンを
使うためです
プリンストールされていた Windows 7 は消してしまいましたが
インストールディスクや、デバイスドライバはディスクとして
最初から用意されているため、後でも戻せそうです
ただ、欠点としては、ubuntu にしたためか、ディスクのトレイの開閉が上手くいかなくなり
SSD部分にインストールしたものの、もう一つ搭載されている500GBのHDDが
権限が root になっているので、書き込みができません
このあたりを解決したら、まとめてみようと思います
DVDとりだしなどに不便さはありますが、アプリ開発のためのエミュレータ起動は
問題なく起動するのであまり不満には感じません
最近は、HTC J を使って BlueTooth などを使ったアプリを勉強中
GPS、Bluetooth 音声入力、AIRなどは、実機検証でないと使えません
Google Nexus 7 も届いたので、スキルをあげてアプリ開発をすすめていこうと思います

日時の指定の違い

日時の同時設定
HTML5での日時の設定には
datetimeとdatetime-localが使える
この違いは
datetimeは
協定世界時、別名グリニッジ標準時を使い
datetime-localでは、現地時間になる
送られるデータにも違いがあり
datetimeは
2012-11-18T12:15Z
datetime-localでは
2012-11-18T12:15
というように、最後にZがつくかつかないかの違いがある

HTML5で強化されたフォーム入力機能

HTML5て強化されたフォーム機能
これまでのフォームは
テキストフィールドやラジオボタン、チェックボックスなど
シンプルだったが、現在はJavascriptで
フォーム入力機能の向上できるライブラリが多々ある
例えば、日付を入力するときに
カレンダーを表示して、クリックして選択できるとか
入力するテキストフィールドに
入力する例が薄い文字でかかれているとか
などなと
HTML5ではこういった機能が標準搭載されるようになった
HTML5で強化された例として
日付入力やカラー選択などのUIのほかに
必須項目の設定
入力文字を正規表現で制限
メールやURLの入力を行うもの
進行状況を示すprogress要素
割合を示すmeter要素
などがある
かなり便利になったけど
それでも
サーバ側では入力チェックが必要
これは、ブラウザにより
HTML5の実装が違うため
HTML5て強化されたフォーム機能
これまでのフォームは
テキストフィールドやラジオボタン、チェックボックスなど
シンプルだったが、現在はJavascriptで
フォーム入力機能の向上できるライブラリが多々ある
例えば、日付を入力するときに
カレンダーを表示して、クリックして選択できるとか
入力するテキストフィールドに
入力する例が薄い文字でかかれているとか
などなと
HTML5ではこういった機能が標準搭載されるようになった
HTML5で強化された例として
日付入力やカラー選択などのUIのほかに
必須項目の設定
入力文字を正規表現で制限
メールやURLの入力を行うもの
進行状況を示すprogress要素
割合を示すmeter要素
などがある
かなり便利になったけど
それでも
サーバ側では入力チェックが必要
これは、ブラウザにより
HTML5の実装が違うため

よくあるJavascriptのエラー

よくあるJavascriptのエラー
一番よくあるのは入力ミス
これは、デバッガで簡単に見つかる
つぎに、該当するはずの行に間違いが見あたらない場合
HTMLのほうにエラーがあるパターンもある
例えば、取得する要素が存在しないとか
追加する場所を間違えて、
存在しないというエラーがデバッガででるなど
対応策は、HTMLもみてみるぐらい
際限なくエラーがでまくりの場合
ブレークポイントを設定する
これをつければ、その行の直前で、一時停止するので
そこまでの状態からデバッグできる
ちなみに、終わったら
ブレークポイント解除を、わすれずに
そして、アルゴリズムエラー
例えば
getMonth()は
実際の月より1つ少ない表示になるため
1月をだすときには
getMonth()+1
にしないと、0月になってしまう

テーブル内のスタイルの変更

今回は、Javascriptのメモ
赤字のところだけ赤くする方法のメモ
テーブル内のスタイル変更
テーブル内の売上金額マイナスの場合に
文字を赤色にする処理
var td=document.querySelectorAll(“#main table td”);
for(var i=0;i -1){
td[i].style.color=”red”;
}
}
この処理を解説すると、
まず、td要素内の売上金額がマイナスかとうか調べる必要があるので
document.querySelectorAll()で
テーブル内の売上金額を示すtd要素だけピックアップする
これがソースにすると
ar td=document.querySelectorAll(“#main table td”);
そして、forを使い、読み出したtd要素の数だけ繰り返す
それが
for(var i=0;i -1){
td[i].style.color=”red”;
}
となる

オバマ大統領再任後の株価暴落について考えてみました

米国大統領選挙が終わり、オバマ大統領の再任が決定しました
しかし、その後株価がさがりつづけています
これについて考えてみました
あくまで、私の推測ですけど
オバマ大統領は今回、富裕層の増税と
ポルカールールとバーゼル3の適用をするはずです
ポルカールールは金融機関の貸出業務以外での
リスクをとることを規制すること
たぶん、株やリスク商品の取り扱いについて
規制がかけられると思います
どこまで規制されるかはまだわかりませんが
保有する株などの売却が行われることも考えられます
バーゼル3は自己資本比率をあげることで
貸出の余力がなくなりやすく
さらに、自己資本比率をあげるためには
持っている株などを売却し、現金化する可能性がでてきます
金融関連の規制は欧州でも動きがあり
金融取引税の導入の検討や資産税の検討もあるため
全体的にリスク資産は売られる傾向が続きそうです

YouTube検索アプリの起動失敗の理由について考える

Web連携アプリを作成するときの勉強として
スマートにプログラミング
Android実践編
を購入し、YouTube検索アプリのサンプルを
実際にコードを打ち込み、試してみました
本来なら、起動確認して、その後Yahoo!動画などの
アプリを作成したり、ブログ記事読み込みなども考えていましたが
エミュレータでは起動するものの
実機では検索すると、エラーを起こし強制終了シてしまいます
書籍では、エミュレータでは動画再生できないため
実機検証するように書かれていますが
実機検証すると、エラーになります
ここで、気になるのが、対応しているOSのバージョンです
現在、使用している端末は
au の HTC J
Android 4.03です
もしかしたら、バージョンが対応していないのかもしれません
最近購入した Nexus7はさらにバージョンが新しいため
検証には不向きなので古い端末で実験する必要がありそうです

AndroidアプリのHTTP通信

HTTP通信処理
Androidアプリから
Webサーバーに接続するには
HTTP通信を使う
HTTP通信でのデータのやりとりは
GET
POST
の2種類があり
GETなら、サーバーにリクエストするときに
http://xxx.co.jp/yyy?id=hoge
というように、
URLのあとに
?

id=hoge
を付けた
クエストリングと呼ばれる形式で送信する
POSTの場合、
GETのように、URLの一部ではなく
本文として送信される
GETは
名前の通り、検索キーワードを送信して
検索結果を取り出すような処理のために使う
POSTは
メッセージ書き込みとかデータ更新に使う
GETとPOSTは
PHPでよく使うので、機会があれば
こちらの言語も勉強すると
より理解が深まります

Javascriptのソース解説

Javascriptの命令文の一部
JavascriptでもPHPでも、ソースコードを読むためには
意味が分からないとと書けないので
解説メモです
まずDOM関連
getElementById()
特定のIDの要素を抽出する
querySelectorAll()
セレクタにマッチする要素を抽出する
getAttribute()
要素の属性を読み込む
appendChild()
小ノードとして追加
innerHTML
HTMLを出力
innerText,textContent
テキストのまま出力
続いて、イベント関連
addEventListener()
イベントリスナー追加
preventDefault()
ブラウザの標準動作を禁止
続いて、CSS関連
opacity
不透明度
backgroundColor
背景色
position
位置の指定方法
width
横幅
height
縦幅
left
左の座標
top
上の座標