aki note ≫ Google 電話面接を受けました orz (いまは消えてるけど)にて割り算が壊れました。自分で実装してみてくださいという質問が紹介されていた。せっかく(?)の機会なので、割り算だけでなく、四則演算を全部壊してみて、JavaScript で実装して見ることにした。JavaScript を選んだのは、コンパイル不要、ビット演算がある、Firebug で手軽に確認できる、という理由から。それ以上の深い意味はない。ということで、次のような問題に一般化してみた。問い四則演算を JavaScript で実装しなさい。演算子は ==、!= およびビット演算子のみ使ってよいものとします。補足例えば、for 文で for(var i = 0; i { // ... } と書くためには、++ 演算子は次のように定義できる。 function increment(i){ var c =
script.aculo.usベースのリッチGUIコンポーネント作成JavaScriptライブラリ「S... 次の記事 ≫:ペイントより圧倒的に高機能な「Paint .net 3.0」が正式リリース 機能変更、お知らせなど - はてな技術発表会日記 - 1月19日の技術勉強会 タイプされたキーに対するアクションを行う Observer 的なライブラリ JavaScriptでキーボードイベントを驚くほど簡単に扱える「KeyTypeListener.js」 MochiKit ベースで、次のように簡単に使えます。 addKeybind('a', function(ev) { log('a')}); addKeybind('a', function(ev) { log('a!!');}, $('loglog')); addKeybind('B', function(ev) { log('B')})
via digg ロシアからのJavascriptネタ。 Google Imageの検索結果など、画像がたくさんあるページで、アドレスバーに以下のJavascriptをペーストして実行すると、おもしろい効果が出る。 javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i<DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=Math.sin(R*x1+i*x2+x3)*x4+x5; DIS.top=Math.cos(R*y1+i*y2+y3)*y4+y5}R++}setI
教育界、技術者コミュニティでJava言語の教育と啓蒙に長年携わってきた 筆者が、独自の視点からJavaの面白さを掘り下げていく。(編集局) 注目を浴びるJavaScript JavaScriptが世に広まって10年近くたちますが、最近話題に上ることが多くなってきています。なぜ、いまさらJavaScriptが注目を浴びているのでしょうか? JavaScriptはECMA(ヨーロッパ電子計算機工業会)によって、ECMAScriptとして標準化されていて、Standard ECMA-262 ECMAScript Language Specification 3rd edition (December 1999)や、Standard ECMA-357 ECMAScript for XML (E4X) Specificationといった仕様が公開されています。これらの仕様を見て分かるように、Java
Ext Documentation Centor 超リッチJavaScriptコンポーネント集「Ext」がprototype.jsに対応。 以前、「Yahoo UI Libraryを拡張した超リッチなコンポーネント集」で紹介したリッチなコンポーネント集はYahoo UI Library 用のものでしたが、 なんと、prototype.js+script.aculo.usでも動作するようになりました。 尚、jQueryにも対応しているようです。 こうしたコンポーネントライブラリで、コアとなるライブラリを選択できるのはより多くの開発者が使えていいですね。 ライブラリだけではなく、テーマを切り替えることも出来て、自由度がいい感じです。 コアとなるライブラリを切り分ける、という、このライブラリ自体の設計部分にも注目したいですね。 コアライブラリの切り替え 画面内ウィンドウ データグリッド タブ風U
「JavaScriptで学ぶ・プログラマのためのラムダ計算」は、1回では述べ切らなくて、一段落付いたところで区切りました。これはかえって良かったですね、ブックマークやトラックバックでフィードバックが得られたので。 そのフィードバックなどをかんがみて、「残り=次回の話題」として予告した内容とは食い違ってしまうのだけど、今回は、文章では伝わりにくい(前回うまく伝わらなかったと思える)ラムダ計算の大事なツボを、なんとか表現してみようと思います。 [このエントリーの内容はだいぶ前にほぼ出来上がっていたのだけど、ココに書いてある事情で、“お絵描き”がなかなか出来なかったのです。] ※印刷のときはサイドバーが消えます。 内容: 知っていて損はない 計算は身体的に理解しよう ラムダ項のツリー表示:準備 ラムダ項のツリー表示:描く! β変換に対応するツリーの描き換え もっとβ変換をやってみよう 計算現象を
とてもシンプルに自分自身が属する script 要素を取得 http://d.hatena.ne.jp/amachang/20061201/1164986067 document.writeをDOM仕様にする http://nyarla.net/blog/javascript-tips1 あたりに着想を受けて、作ってみました。 http://la.ma.la/misc/js/lazy_writer/ 特定のscript src内のdocument.writeをピンポイントに置き換えることができます。 制限事項としては、document.writeを使ってscriptタグを生成するようなコードの場合、IEではinnerHTMLにscriptを書いても実行されないという仕様があるので実行されません。その点を除けば、IFRAMEをdocument.writeで挿入するような、良くある広告系のdo
Selamat datang di situs terbaru dan terupdate hari ini, yang menyediakan game slot gampang menang Jackpot. Jika Anda ingin mendapatkan atau merasakan kemenangan jackpot terbesar dalam bermain slot online? Tentunya Anda sudah berada ditempat yang tepat, karena situs kami dapat memberikan pengalaman bermain yang spektakuler. Tidak hanya itu, Anda juga [...] Jika Anda masih mencari situs slot online
さて、たまにはJavaScriptでも。 JavaScriptで独自の右クリックメニューを簡単に使うライブラリ作った。 http://spiritloose.net/misc/popupmenu/ デザインはlivedoor Readerから頂きました。 var popup = new PopupMenu(); popup.add('メニューに表示するテキスト', function(target){ // なんか処理 }); popup.addSeparator(); // セパレータ追加 popup.bind('targetElement'); popup.bind(); // document がターゲット こんな感じで使える。 jsファイルひとつでよくて、メニューのHTML書く必要はない。スクリプトのみでOK。 CSSファイルとか、他のライブラリとかも不要。 その分デザイン変えるため
いろいろと古い IE で半透明 png を使うための JS が紹介されています http://web.kankodo.net/2007/02/01-233315.html http://labs.unoh.net/2007/02/ie6_png_fix.html http://phpspot.org/blog/archives/2007/02/iepngjavascript.html で、自分も使おうと思ったのですが。 ライブラリの依存とか、 window の load イベントの時に処理されるのがちょっとだけ嫌だったので、自分用のを作りました。 意外と便利だったので公開します デモ(IE5.5 or IE 6 で見てください) http://usrb.in/amachang/static/AlphaLoader/demo.html 使いかた 半透明にしたい img 要素のあとに http
RSS FeedをJavascriptでウェブページに表示 (ベータ版) 設定する 以下の設定に従って、表示させたい情報と表示方法を選択してください。 「プレビュー」ボタンを押すと、表示内容と表示方法を確認できます。 問題なく表示されたら、「コードを取得」ボタンを押してください。 そうすると、Javascriptのコードが表示されます。 あとはそれを表示させたい場所へコピペしてください。 レイアウトはCSSで行います。標準では、このCSS を使っています。 URL RSS FeedのURLを入力してください。 文字コード スクリプトを表示するページの文字コードを入力してください。(UTF-8, EUC-JP, Shift_JIS) 参考) このページは、Shift_JISで書かれています。 他の文字コードでプレビューを確認する場合はこちら。 UTF-8 / EUC-JP UTF-8 EUC
最近の Prototype.js LL Ring でも言ったけど、まったくもって 4 ヶ月間更新なしだった。。。 しかし! ここ、 1 週間でこんなに更新があった! http://dev.rubyonrails.org/changeset?new=spinoffs%2Fprototype%404950&old=spinoffs%2Fprototype%404236 ということで、新しい機能まとめ DOM 要素に observe, stopObserving Element.Methods に observe が追加された。 var handler = alert.bind(null, 'クリックありがとう!'); $('target').observe('click', handler); // うーん、直感的! $('target').stopObserving('click', han
mootools - 軽量なAjax/JavaScriptライブラリ ここでは、サイズの小さなAjax/JavaScriptライブラリである「mootools 1.0」(以下、mootools)の機能や使い方について解説する。mootoolsは、バージョン1.0がリリースされたばかりのライブラリで、ドキュメントが充実していることが特徴の一つである。 このmootoolsは、Valerio Proietti氏によって開発が続けられているAjax/JavaScriptライブラリである。The MIT Licenseのもとで、オープンソースソフトウェアとしてリリースされている。オブジェクト指向にのっとって開発されたモジュール形式のライブラリで、ダウンロード時に構成ライブラリを選択し圧縮率を指定して成果物を取得できるという特徴がある。 百花繚乱のAjax/JavaScriptライブラリ Ajax/
Tipue JS Tipue JS is an Open Source JavaScript site search engine. It works with any browser that supports JavaScript and at least partially supports the W3C DOM Level 1. JavaScriptの高速サーチエンジン、Tipue JS。 JavaScriptのみで動作するのでサーバーサイドでの検索処理は不要。 但し、tip_data.js というファイルでデータを持っておき、ブラウザに読ませる必要があります。 現在の所、日本語は通らないようですが、なかなか面白いプログラムですね。 図) Tipueによる検索結果画面 もう一つ。 同じサイトで配布されているCloud JSが面白いです。 Cloud JS Cloud JS use
DHTML Site - 10 Free CSS and Javascript Calendars Calendars may be used on webpages for various reasons, such as allowing users to easily pick a date in a form, or just to provide monthly information. CSS&JavaScriptカレンダーライブラリ集。 いろんなCSSとJavaScriptで実装されたサンプルライブラリが紹介されています。 Monket Calendar Quick Calendar Using AJAX and PHP Integrating Google Calendar into your Site JS Calendar The DHTML / JavaScript
8 ヶ月前に setInterval 書き換えのネタで作ったやつ id:amachang:20060104:1136344836 id:amachang:20060114:1137243389 ふと ちょっと設計変えたらすごく速くなる気がして、作り替えてみた。 でも、作ってみたら clearInterval がちょっとだけ速くなったけど、正直そこまで変わらなかった。 でも、設計はきれいになったと思うので公開します。 ダウンロード http://sample.ecmascript.jp/setInterval/setInterval03.js 以前のもファイル化した 最初の失敗作(utf-8だから適当にエンコードして使ってください) 次に作ったやつ、実績はこっちのがある(utf-8だから適当にエンコードして使ってください) 使いかた すべてのスクリプトより前に読み込む <script src
「入門 JSON」が微妙に評判がいいみたいなので, 今回はもう少し踏み込んだ内容を書いてみたいと思います。 前回では JSON のデータフォーマットについて曖昧な表現や説明のまま流していますが, ここではもう少し厳密に見ていきます。 またもや長文です。 ご注意を。 なお, この記事は「Introducing JSON」(日本語訳)と併せてご覧いただくことをお奨めします。 前回は JSON のデータ型について連想配列(members)と配列(array)の2つがあると説明しました。 しかし実際にはもうひとつオブジェクト(object)という型があります。 実は JSON ではこのオブジェクトがデータの基本になっています。 (説明が長くなるので前回はこの部分についてワザと端折りました) オブジェクトは以下に示すようにブレス記号で囲んだ表現になります。 { } { members } ここで注意
はじめに JavaScriptでMP3を再生するライブラリ「playmp3.js」の作り方を解説します。MP3の再生にはFlashの機能を利用し、JavaScriptからFlashの関数を呼び出すなど、JavaScriptとFlashの連携方法も併せて紹介します。 Flashファイルの作成には、フリーのFlashコンパイラMTASCを利用しますので、Flashを持ってない人でも応用ライブラリを作成できるでしょう。Flashと連携することでJavaScriptの可能性が広がります。 以下のサイトで、MP3再生のサンプルを試せます。JavaScriptでMP3再生するサンプル 対象読者JavaScriptで効果音やBGMを鳴らしてみたい人JavaScriptとFlashを組み合わせて面白いことをやってみたい人 必要な環境FirefoxまたはIE 6以降フリーのFlashコンパイラ MTASC
このページでは、JavaScriptのオブジェクト指向言語としての側面を研究します。 JavaScriptは、HTMLの拡張という側面が注目されていますが、 プログラム言語として見た場合にも、興味深い独自の特徴がたくさんあります。 このページでは、これらJavaScriptの言語としての特性、 特にオブジェクト指向言語としてJavaScript を見た場合の特徴について詳しく研究を試みます。 JavaScriptは、ほぼ完全なオブジェクト指向言語です。プログラマによるクラス定義、プロパティ定義、メソッド定義ができます。継承は、言語の基本機能としては用意されていませんが、基本機能の組み合わせにより実現できます。 メソッドのバインディング(binding)はレイトバインディング(late binding)です。これは、JavaScriptが変数の型のない言語だからです。 JavaScriptに
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く