▼ [雑記]CoffeeScriptはインストールしなくてもブラウザ上で実行できるよという話 CoffeeScript Ruby + Pythonな構文でJavaScriptが書けるCoffeeScriptですが、ブラウザから使ってみるだけなら、type属性に"text/coffeescript"を指定したscript要素の中に直接コードを書いて、後はコンパイラを直接ロードしてしまえば実行できます。 <script type="text/coffeescript"> # 実行したいCoffeeScript構文 </script> <script type="text/javascript" src="http://jashkenas.github.com/coffee-script/extras/coffee-script.js"></script> 動かしてみるとこんな感じになります。
ウェブを扱うライブラリやプログラムで必ずと言って良いほど見かけるものに、escapeHTML という関数があります。 "&" 等、特別な意味を持つ文字を、表示等のために実体参照 (&) に変換するお決まりの関数なんですが、実装には色々とバリエーションがあるものです。 1. String#replace メソッドを繰り返す (MochiKit 等) function escapeHTML(str) { return str.replace(/&/g, "&").replace(/"/g, """).replace(/</g, "<").replace(/>/g, ">"); }このパターンが最も多く見受けられます。Ruby でも同様に gsub を繰り返す方式を見かけることがあります (例: RSS::Utils.html_escape)。 2. Str
こんにちは、亀本です。 本当は今日はアシアルの日常を書く、という名目のブログ当番なんですが、どうせエンジニアの日常なんてコード書いてますよね。 ということで、最近使ってみたTitaniumについて書いてみる事にしました。 さて、最近ちまたでTitanium Mobileがあつい!という話が出ていて、入門記事もいろんなところで上がり始めていますね。 Titaniumをご存じない方のために簡単に説明しておくと、JavaScriptを使ってiPhone/Androidアプリを作ってしまおう、という物です。 果たしてどんなもんか!と、手元で作成中だったアプリをTitaniumを使って再実装してみたのですが、世間で言われるとおり所々で凝った事をしづらいものの、想像していたよりはずっと、リッチ・簡単・高速に作れる印象でした。 早い、安い、うまいなんてぎゅうどn(ry その開発の際に、Objective
FirebugのコンソールタブにあるコマンドラインはちょっとしたJavaScriptの動作を確認する際に便利ですが、普段使ってるエディタのように補完やハイライトされないので、少し複雑になると分かりづらくなりますね。 そこで、内容の編集自体はエディタで行いその内容をコマンドラインに反映させるuserChome.jsを作成しました。 Firebug_editor.uc.js 使い方 ダウンロードしたスクリプトに60行目くらいにエディタのパスを設定する場所があるのでパスを入れる Firebugのコンソールタブで大きい方のコマンドラインを開く 右下にEditorというボタンがあるので押す エディタで内容を編集→保存 Firefoxにフォーカスを戻すと自動的に反映 下に動作の動画を置いておくので、下を見ればどのように動いてるか分かると思います。 alice0775のスクリプトが元になってるので、Wi
時が経つのは早いもので、ぼーとしてたらもう1月も終わりそうですね。外村です。 先日リリースされたjQuery1.4で新しく追加されたメソッドや新しい使い方ができるようになった機能を全部ではないですがいくつか紹介します。以下に変更点が全て掲載されているのでそちらも参照するといいと思います。 Version 1.4 ? jQuery API 新規で追加されたメソッド 1. nextUntil()、prevUntil()、parentsUntil() 指定したセレクタまでの要素を返します。以下の例ではitem3とitem4の後ろにテキストが追加されます。 <ul> <li id="item1">item1</li> <li id="item2">item2</li> <li id="item3">item3</li> <li id="item4">item4</li> <li id="item5
Chromeのcopyは, たしか, 隠しinput[type=text]作ってcopyさせたいものをvalueにいれて, selectionStart/Endをいじって, focusあてて, document.execCommand('copy')すればJSだけでできる. http://twitter.com/Constellation/status/7188365498 これを参考にcopy関数を作ってみた。Internet Explorer、Safari、Google Chromeで動く。FirefoxとOperaで上手くいく方法は発見できず。 おまけでFirebugの入ってるFirefoxでも動くようにしてみた。 function copy(text) { var input, success; if ("console" in window && "notifyFirebug"
もうすぐクリスマスシーズンなんですかね?本間です。 巷で話題のイケメンホイホイ(以下イケホイ)ですが、このたびiPhone用サイトがオープンしました。 それにあわせて新機能も搭載!イケメン写真にタグを付ける機能と、iPhoneでぼんやり眺めているだけで楽しいビューア機能です。 タグ機能はPC版にも搭載されましたので、ぜひぜひみんなで色んなイケメンにタグを付け合ってくださいね。 タグが付くことで、オススメの精度が上がりますよ! ビューア機能は、自分がゲットしたイケメンズがiPhone上で次から次へと表示される機能です。 オフラインでも表示できる機能付き! 電車の中で見るも良し、卓上に置いて眺めるも良しです。 あなた好みのイケメンがゾロゾロ。イケメンホイホイのサイトはこちら! …うーん、ユーザ層がかぶらなそうだな、この記事。 さてさて、本題はHTML5の機能を使った画像のオフライン表示について
JSDeferredを使ってみたメモです。動きがわかれば、使うときに気をつけなきゃならないツボがわかるようになります。 なお、詳しい解説は本家をどうぞ。 JSDeferredはどんなもの? チュートリアル的ではなく、このフレームワークの基本中の基本を最初に見ておきます。 JSDeferredでは、処理を数珠つなぎにして実行できます。以下、実用的にはまったく役に立ちませんが、このフレームワークの基本中の基本となります。 // Deferredを作る var d1 = Deferred(); // 処理をつないでいく var d2 = d1.next(function () { alert("d2"); }); var d3 = d2.next(function () { alert("d3"); }); // 発火すると全部走る d1.call(); ただ、これではまったく非同期性がありませ
以前からある手法から順番に見ていきます。 ページの高さの監視 setIntervalでページの高さを監視して、増えていたらAutoPagerizeが動いたとみなして処理を行う var THRESHOLD = 300; var _height = window.innerHeight; setInterval(function(){ if (window.innerHeight - _height > THRESHOLD) { // 処理 } _height = window.innerHeight; }, 300); メリット AutoPagerizeだけでなく、はてなダイアリー・ブックマーク、Twitterなどでのサイト側でのページの継ぎ足しにも対応できる デメリット THRESHOLDをいくつにするかなど、一概に決められない。タイマーをたくさん回すと重くなる。Floatしている要素を継
JSDeferred について JSDeferred は JavaScript のコールバックによる非同期処理を直列的に書けるようにするために作られたライブラリです。 foofunc(function () { barfunc(function () { bazfunc(function () { }); }); }); foofunc().next(barfunc).next(bazfunc); 簡単な使いかた 読み込み まずは JSDeferred を使うために、HTML に script 要素を追加します。 <script type="text/javascript" src="jsdeferred.js"></script> <script type="text/javascript" src="my.js"></script> JSDeferred は外部ライブラリに依存しておら
重箱の隅で恐縮ですが。弾さんは (function(e){ e.innerHTML = e.innerHTML.replace( /東京都?([\u3200-\u4DBF\u4E00-\u9FFF\uF900-\uFAFF]+)/g, '首都$1東京' ) })(document.body)漢字を判定する正規表現が工夫のしどころでしょうか。[一-龠]はUnicode時代にはちょっと古い。grep CJK /usr/local/lib/perl5/5.10.0/unicore/Blocks.txtが参考資料代わりです。CJK Unified Ideographだけ欲しければ[\u4E00-\u9FFF]でも行けます。 404 Blog Not Found:javascript+regexp - ていうか首都最強東京bookmarklet とおっしゃってるけど、[\u4E00-\u9FFF]
何のひねりもないiPhone用のお絵かきアプリです。 先日公開した「ii」もはじめはcanvasタグを使って作ろうと思っていたのですが、文字が使えないことがわかって急遽、背景と文字の合成はPHPのGDで行いました。 もう少しcanvasタグを勉強したかったので、とりあえずお絵かきアプリを作って見ました。保存もできないし、色も変えられない、ただ線を描くだけですけど、指でタッチして書くというのはまた一味違いますね。この気軽さがWEBアプリのいいとこじゃないでしょうか。 iPhoneのお絵かきWebアプリ はじめて動画でとってみました。 ずいぶん簡単なんですね。 ソースもシンプル。特に凝ったことはしてなくて、基本的に、 canvas.beginPath(); canvas.moveTo(x1,y1); canvas.lineTo(x2,y2); canva
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Firefoxではscript要素のdefer属性がサポートされていて、これを使うと、DOM構築後に実行したいスクリプトのインデントを一段減らすことができて便利なのだが、Safariではサポートされていない。 <head> <script defer="defer"> document.body.style.backgroundColor = "#00ffff"; </script> </head> どうしても使いたいので、どうにかするスクリプトを書いた。 <head> <script src="defer.js"> document.body.style.backgroundColor = "#00ffff"; </script> </head> defer属性の代わりにscript要素のsrcに"defer.js"を追加するだけで使えるようになる。 javascripter's gis
既に色々なところで話題になっているAmazonのECSがProduct Advertising APIに名称変更され、3か月後には認証を要求するようになるという変更は、Pipes(やYQL)などを利用してJavaScriptだけで書かれているアソシエイト・ツールにはかなり厳しい気がする。シグネチャの生成自体はJavaScriptで出来るので、とりあえずAsamashi09を対応させたけど、Secret Access Keyを隠さないといけないのでこのままでは公開できない(動作サンプルすら提供できない)。 使ってみる場合は適当な場所にダウンロード(↓downloadとかいうボタンから)して、適当な場所に展開後、asamashi09.jsの11行目と12行目を自分のAccess Key IDとSecret Access Keyに置き換え、index.htmlをブラウザで開けば動く(はず)。 使
TinyURL Decoderについて、 Facebook 経由でオランダの人から "itms://itunes.apple.com/WebObjects/MZStore.woa/wa/viewPodcast?id=201671138" というような iTunes Music Store の URL を短縮したものがある場合にいちいち iTunes が起動してかなわんという報告をもらいました。短縮された URL から元の URL に復元するのに、いくつかのサービスについては提供されている API を利用したり、リダイレクトしないタイプのものについては正規表現を使っているのですが、大半はリダイレクトされるのに任せて最終的な行き先を取得しています。で、その際に、先述のような URL は iTunes に関連づけられているので、 iTunes が起動してしまうわけです。 これについてしばらく考
本日、少し遊んでてはまった。 前から、他のWebサービスでは気になったのだが、深く追求していなかったが、探すとすぐに理由が見つかったので、忘れないためにメモです。 何らかの処理をするために、キーが押された事を検知して、処理を走らせるなんてのは、最近多いわけですが、その際に使うイベントによって、MacのFirefoxでは、旨く以後いてくれないという話。 サンプルをつくりました。---->こちら <hhml> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script language="JavaScript"> <!-- function eventpress() { alert("event!"); } //--> </script> <body> onkeydown<input
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く