ラベル javascript の投稿を表示しています。 すべての投稿を表示
ラベル javascript の投稿を表示しています。 すべての投稿を表示

2011年7月7日木曜日

javascriptでスマホのタッチ(タップ)イベントを取得する

どうも、俺@仕事中です。お久しぶりです。
最近はクライアントjavascriptを書いたり、nodeを書いたり、やたらjavascriptばかりイジっています。

今日はスマホブラウザ(iphoneやandroid)でタッチ(タップ)に対するイベントをjavascriptで取得する方法をめもめもします。

// 1)ontouchstart
document.getElementsByTagName("body").item(0).ontouchstart = function() {
  alert("touchされたよ");
};
// 2)ontouchmove
document.getElementsByTagName("body").item(0).ontouchmove = function() {
  alert("touchされて移動してるよ");
};
// 3)ontouchend
document.getElementsByTagName("body").item(0).ontouchend = function() {
  alert("touchが終わったよ");
};
jQueryだともっと楽に書けます。
ちなみにiphoneのsafariだと確実に動作しますが、androidはGalaxySでしか確認していません。
が、新しいandroid端末であればほぼ大丈夫だと思います。

以上でぇぇえぇぇえす。

2011年2月9日水曜日

javascriptでsleepみたいな事やりたい

どうも、俺@残業中です。

javascriptでsleep();、、そんなものはございません><

ただし、似たようなものでwindow.setInterval(func, millisec);があります。
例えば現在時刻をリアルタイムに表示させるには
<div id="nowtime"></div>
<script type="text/javascript">
  window.setInterval(setTimer, 1000);
  function setTimer() {
    var nowdate = new Date();
    var year = nowdate.getFullYear();
    var mon  = nowdate.getMonth() + 1;
    var day  = nowdate.getDate();
    var hour = nowdate.getHours();
    var min  = nowdate.getMinutes();
    var sec  = nowdate.getSeconds();

    var elem = document.getElementById("nowtime");
    elem.innerHTML = year + "年" + mon + "月" + day + "日" + " " + hour + "時" + min + "時" + sec + "秒"; 
  }
</script>
でできちゃいますよ!
間違ってもwhile(true)とかで無限ループさせないようにね!

以上でぇぇぇぇす。

2009年7月17日金曜日

jQueryでクリックされたエレメントの属性を取得する

どうも、俺@仕事中です。

jQuery+Ajaxを使ってインタラクティブなデザインのシステムを構築中なのですが、ちょっとハマったのでめも。

画面にテーブルとか使って、何かデータを一覧表示した場合に、クリックされた要素のvalue値やname属性の値やidの値とか取りたくて、取りたくて、、、取れなくて1時間悩みました。。。

例えば
<td><a href="foo" id="foo_id" value="foo_value">FOO</a></td>
<td><a href="bar" id="bar_id" value="bar_value">BAR</a></td>
のようなテーブルがあるとします。

これでjQueryで'FOO'をクリックした時に、その<a>タグに指定してあるid値やvalue値を取得したい!場合は
$("a").click(function() {
 id = $(this).attr("id"); // idの取得
 val = $(this).attr("value"); // valueの取得
});
という調べたらすぐ分かるような方法で取得できます。

調べ方ってとっても重要ですね!!
以上~~~~。