トップページ >  HTML5 >  スマホのtouchイベントを実装する
初版2013/03/01: 最終更新日2013/03/01
スマホのtouchイベントを実装する
目次
スマホのtouchイベントを実装する
スマホのtouchイベントを実装する
HTML5でスマホにtouchイベントを追加するにはaddEventListenerをcanvas要素に追加します。
Webアプリのスマホはcanvasに画像を描画したりtouchイベントを追加したりして作成することができます。
また、スマホの基本的なHTMLは以下です。このJavaScript部分に色々実装していきます。

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0" />
<meta name="apple-mobile-web-app-capable" content="yes"> 
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon" href="./icon.png" />
<meta charset="utf-8" />
<title>タイトル</title>
<script language="JavaScript">
<!--
setTimeout("scrollTo(0,1)", 50);
//-->
</script>
</head>
<body>
<canvas id='canvasId' width='305' height='400'></canvas>
</body>
</html>

真ん中にcanvasが要素があります。このcanvas要素にaddEventListenerを追加します。

以下、追加したソースです。

<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=0" />
<meta name="apple-mobile-web-app-capable" content="yes"> 
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<link rel="apple-touch-icon" href="./icon.png" />
<meta charset="utf-8" />
<title>タイトル</title>
<script language="JavaScript">
<!--
onload = function() {
    canvasId.addEventListener('touchstart',method,false);
};

function method(){
    alert('touchしました');
}

setTimeout("scrollTo(0,1)", 50);
//-->
</script>
</head>
<body>
<canvas id='canvasId' width='305' height='400'></canvas>
</body>
</html>

これで、こちらにスマホでアクセスしてください。
画面をtouchすると、アラートが表示されます。PCからアクセスしてもtouchイベント自体がないので何も起こりません。