タグ

2010年8月16日のブックマーク (5件)

  • iPhone/iPadでダブルタップをJavaScriptで実装する

    iPhone/iPadでダブルタップをJavaScriptで実装する iPhone/iPadJavaScriptでは「onclick≒タップ」なのに「ondblclick≠ダブルタップ」となるのでダブルタップを利用したい場合は独自に実装しなくてはいけない。 次のように記述するとjQueryで擬似的にダブルタップを実装することが出来ます。 $("p").data("dblTap",false).click(function(){ if($(this).data("dblTap")){ //ダブルタップ時の命令 console.log("ダブルタップ"); $(this).data("dblTap",false); }else{ $(this).data("dblTap",true); } setTimeout(function(){ $("p").data("dblTap",false);

    iPhone/iPadでダブルタップをJavaScriptで実装する
  • NILScriptの使い方と書き方

    NILScriptとはSpiderMonkeyを使ったJavaScriptベースのスクリプト実行環境です。(Windows専用+Wine環境でもある程度) 直感的に言うと、WSH + AutoHotKeyみたいな感じというのが分かりやすいかな。 できることなど細かい事はNILScriptのページやDocを読んでもらうとして、SpiderMonkey(JavaScript 1.8.1ベース)を使った処理系なのでFirefoxと同じJavaScriptの文法で、エクスプローラでのバッチ処理やキーバインドの変更などWSHやAutoHotKeyで行っていたような事がJavaScriptで書けます。 NILScriptのページからnil.zipをダウンロードして、適当な場所に解凍します。 解凍して出てくるng.exe(コンソールあり)とngw.exe(コンソールなし)のどちらかに、NILScript

    NILScriptの使い方と書き方
  • 要素ノードにデータを紐付ける関数 - rikubaのブログ

    HTML5で、紐付けたいデータが文字列なら、data-で始まる属性(custom data attribute)を付けることができる(詳細はコメント欄を参照)。 DOM3のNode#setUserData・Node#getUserDataのように、間接的に要素とデータを紐付けられる関数を作った。jQuery.data()のようなものと言ったほうが分かりやすいかも。ただ、jQuery.data()は要素に独自のプロパティ(「jQuery」に時刻のミリ秒表現を続けた文字列)を生やしてしまう。 特徴 Node#[sg]etUserDataとの違い 要素ノードのみ対応。 Node#setUserDataの第三引数のようなハンドラ関数には未対応。 クロスブラウザ:実装によって手段を変える Node#[sg]etUserDataをサポートしている実装では、単にそれのラッパー(Firefox)。 Ele

    要素ノードにデータを紐付ける関数 - rikubaのブログ
  • HTML5 Canvasのブラウザによって異なる微妙な振る舞いについてまとめてみた。 - 風と宇宙とプログラム

    はじめに CanvasはHTML5とは切り離された独立した仕様(HTML Canvas 2D Context)になっているようですが、現状のブラウザ上でのCanvasのについて、普段はあまり気にしない微妙な振る舞いについて調べた結果をまとめてみました。 調べたブラウザの各バージョンは以下の通りです。 Firefox Chrome Safari Opera 3.6.8 6.0.490.1 dev 5.0.1 10.61 線を描く (lineTo) ただの直線を描くだけのlineToですが、その単純なものにも、恐らく、多くの人が普段は気にしないような問題があります。それは座標値とアンチエリアスです。詳しく見る前に、実際の結果を示しましょう。下記のイメージ中に描かれている線は、いずれも線幅(lineWidth)が1の線です。 (左から、Firefox, Chrome, Safari, Opera

  • 変なJavaScript (+ E4X) - hogehoge @teramako

    最近、E4X の勉強をしている(仕様はStandard ECMA-357ね) ご存知の通り(?) Mozilla の JavaScript *1には E4X が使えるのだが、いろいろ罠チックなものがあったり、ECMAScriptの仕様を壊してしまっていたりと面白い(ぉ const XHTML = new Namespace("xhtml", "http://www.w3.org/1999/xhtml"), LANG_JA = new Namespace("ja", "http://example.com/ja"), LANG_EN = new Namespace("en", "http://example.com/en"); default xml namespace = XHTML; var xml = <root xmlns:ja={LANG_JA} xmlns:en={LANG_EN

    変なJavaScript (+ E4X) - hogehoge @teramako