タグ

javascriptに関するCuckooのブックマーク (182)

  • Safari4 と IE8 で実装された DOM Storage とは何か - IT戦記

    はじめに 皆様 JavaScript のスピード競争が激化し、 ECMAScript 3.1 の仕様の策定が進むなど、激動の JavaScript 時代をいかがお過ごしでしょうか。 さて今日は、今、ちまたで大ブレイクの兆しを見せている DOM Storage という仕様を紹介したいと思います。 DOM Storage とは何か まず、 DOM Storage とはどんなものなのでしょうか。 とても簡単に言ってしまえば、とてもたくさんのデータが保存できてサーバーに自動で送られない Cookie みたいなものです。 さらに、 Cookie とは違って JavaScript からとても扱い易く作られています。 では、この DOMStorage の具体的なソースコードを見てみましょう。 <!DOCTYPE html> <html> <head><title>DOMStorage の使い方</tit

    Safari4 と IE8 で実装された DOM Storage とは何か - IT戦記
  • それすぐ実行!JavaScript! - IT戦記

    思った JavaScript はすぐに実行してみましょう! ブラウザの URL 入力欄に javascript:(function() { /*実行したいコードを書く*/ })()FireBug を使ってる人は、コンソール開いて実行したいコードを書く。 たとえばこんなことができます。 これらの例は僕が日頃使っているものです。 グローバルで使える関数を列挙する(Firefox Only) FireBug用 for(var n in window) if(typeof window[n]=='function')console.log(n); URL用 javascript:(function(){var b='';for(var n in window)if(typeof window[n]=='function')b+=n+"\n";alert(b)})() Object.prototyp

    それすぐ実行!JavaScript! - IT戦記
  • JavaScriptのイベントハンドラ説明

    気でやるならonclick属性は避けてライブラリを活用すべき - 帰ってきたHolyGrailとHoryGrailの区別がつかない日記 を読んで,思うところあって書いてみました(決してカウンターアーティクルではない)。 むかしむかし JavaScript を触っていた むかしむかしに書かれた JavaScriptで勉強している/した 人向けに。大元記事(そろそろ気で学びませんか? | Think IT(シンクイット))の想定読者に近いかなと思います。よって以下は JavaScript の初学者にはまったくおすすめできない(余計な知識がついてしまう)です。 Step 1: はじめのいっぽ ボタンを押したらメッセージボックスが出現する HTML を書いてみます。 <html><body> <script type="text/javascript"> function ShowMes

    JavaScriptのイベントハンドラ説明
  • [JS]クッキーを使用しないで、セッションデータを利用できるスクリプト

    sessvars.jsは、ブラウザのクッキーを使用しないで、セッションデータを利用できるスクリプトです。 Session variables without cookies デモ sessvars.jsを使用することにより、クッキーをオフにしていたり、使用が禁止されている環境でもセッションデータを利用することができます。 ※スクリプトをオフの場合には利用できません。 格納できるデータの上限は、Opera9.5で2MB、IE7, Fx1.5/2, Safari3で10MBとなっています。 サイトに記載してある使用上の注意は、以下になります。 sessvars.jsは、JavaScriptのwindow.nameにデータを格納します。 これはクロスドメインのセキュリティ問題があるため、パスワードやクレジットカード番号などの重要な情報には利用しないでください。 しかし、ヘッダ情報でサーバーには送

  • いやなブログ: JavaScript とクロージャ

    JavaScript とクロージャ JavaScript プログラミングはなかなかおもしろいよ、と知人に言ってみたところ、 全然信用されずに怪訝な顔をされる、という目に遭いました。 クロージャが使えて DOM ツリーにイベントハンドラを簡単に追加できるよ、と続けると多少は興味を持ってもらえるようなので、クロージャを使ったサンプルプログラムを書いてみました。 箱の中でマウスカーソルを適当に動かしてください。 このプログラムでは各セルの色の濃さをクロージャを使って保持しています。makeHandler という関数の depth という変数がそれです。クロージャを使うと、個々のイベントハンドラごとに独立した状態を簡単に持たせされるのがポイントです。 別にクロージャを使わなくてもいいようなプログラムですが (クロージャではなく DOM のエレメントに状態を持たせるとか)、こういう風にも書けるよ、と

  • [JS]MicrosoftからJavaScriptのメモリリーク検出ツール

    MicrosoftのヨーロッパチームからJavaScriptのメモリリークを検出するツール「JavaScript Memory Leak Detector」のベータ版がリリースしました。 JavaScript Memory Leak Detector JavaScript Memory Leak Detectorは、Windows+IE専用のツールで、ダウンロード・インストールは以下の手順になります。 下記の「download link」からファイルをダウンロード。 Installation ファイルを解凍して、「JSLeaksDetector.msi」をダブルクリックして、インストール。 インストール時は、IEは終了しておく。 インストールが完了したら、IEを起動。 IE7の設定方法 [表示] - [エクスプローラ バー」 -[js memory leak detector]をチェック。

  • iTunesライクな画像ギャラリーjavascript「imageFlow」

    twitter facebook hatena google pocket Appleのデザインには定評がありますが、中でもiTunesのcoverflowと呼ばれる表示は秀逸です。 imageFlowではjavascriptで作成できる手法を公開しています。 sponsors 使用方法 imageFlowからimageflow.jsとscreen.cssをダウンロードし、headに書き込みます。 <link rel="stylesheet" href="http://yourdomain/screen.css" type="text/css"> <script type="text/javascript" src="http://yourdomain/imageflow.js"></script> *screen.cssは適宜変更してください。 そして画像を以下のように記述します。 <d

    iTunesライクな画像ギャラリーjavascript「imageFlow」
  • 第30回 JavaScriptの動作を軽くするための工夫:ITpro

    今回はJavaScriptとWebページの表示・操作の体感速度について考えてみます。というのは,JavaScriptのせいでWebページの表示や操作などの速度が遅くなっている,と感じることがあるからです。 現在のWebサイトでは,JavaScriptを使って使い勝手を向上することは,ごく当たり前に行われています。例えば,動的にページを書き換えたり,ページ遷移を行わずにサーバーと通信を行ってデータを取得したりと,JavaScriptを使うことで,Webサイトをより便利に,より使いやすくすることができます。 Ajaxという言葉がはやってから,もう2年以上がたつんですよね。何年か前,JavaScriptはじゃまで,セキュリティを低下させる不要なものだと見なされていた頃がありました。しかしそれから一変して,「JavaScriptをがんがん使ってもいい」という空気になったことで,Webサイトを作成す

    第30回 JavaScriptの動作を軽くするための工夫:ITpro
  • IE6以下をWeb標準に準拠させるライブラリ『IE7.js』

    IE6以下をWeb標準に準拠させるライブラリ『IE7.js』 多くの人が待ちに待ち望んだライブラリ。やはりすごい人はすごいものを作るんですね。 このライブラリを読み込むことによりIE6以下でもIE7と同じようなXHTM/CSSの解釈を行ってくれます。 ただし完全にIE7と同じような形にするのではなく、より近い形ということです。 現在公開されているバージョンはversion 2.0 (beta)ということで、まだ実務で使うのは難しいかもしれませんが、MITライセンスで公開されておりますので正式にリリースされればweb制作の現場を変えてしまうライブラリです。 設置方法 Google コードのie7-jsより直接読み込むことが可能です。 以下の要素をhead要素内などに記述します。 <!--[if lt IE 7]> <script src="http://ie7-js.googlecode.c

    IE6以下をWeb標準に準拠させるライブラリ『IE7.js』
  • Life is beautiful: Javascript、クロージャを使ったプライベート関数の隠蔽について

    (このエントリーは「Javascriptクイズ:無名関数と実行効率の話」の続編。) 「???」と頭をかしげる太郎に、「じゃあ、これだったらどうかな?」と三郎はコードを書き始めます。 function code2name(code) { var mapping = { 'us': 'United States', 'ja': 'Japan', 'ko': 'Korea', 'ru': 'Russa', 'uk': 'United Kingdom', 'fr': 'France', 'cc': 'China', 'gw': 'Germany' }; return mapping[code] || '(unknown)'; } 「カントリーコードを国名に変換しているんですね。」と太郎。 「どこが問題だか分かる?」 「うーん、マッピングのためのオブジェクトを毎回作り直しているところかな。」 「そう

  • 新春特別企画・2008年を展望する!:2008年Webデザインに使えるJavaScriptライブラリ|gihyo.jp … 技術評論社

    昨年を振り返ると、いろいろなJavaScriptライブラリが登場しました。デザインで使えるものから、インターフェースを改善するものなど、2008年も活躍しそうなものを紹介したいと思います。 Internet Explorer 6でアルファチャンネルを含むPNGを表示 iepngfix.htc Internet Explorer 7からアルファチャンネルを含むPNG画像の表示が出来るようになりましたが、以前のバージョンでは表示するためにひと手間必要になります。iepngfix.htcを利用すれば、アルファチャンネルを含むPNG画像を利用する際に簡単にIE5.5以降のブラウザで表示させることが可能になります。 IE6でアルファチャンネルを含むPNGを表示 <img>タグ、またはエレメントの背景画像にxxx.png画像が指定されているものに対して、DXImageTransform.Microso

    新春特別企画・2008年を展望する!:2008年Webデザインに使えるJavaScriptライブラリ|gihyo.jp … 技術評論社
  • JavaScript for CSS

    それで、動的に変化させる「きっかけ」として、HTML 4.0では以下のような内在イベントが定義されています。 onload ウインドウあるいは全てのフレームの読み込みが完了した時に発生する。BODYかFRAMESET要素に設定することが出来る。 <BODY onload="function()"> <!-- 読み込みが完了したら呼び出す --> <BODY onload="setTimeout('function()',n)"> <!-- 読み込みが完了してからnミリ秒後に呼び出す --> onunload ウインドウあるいはフレーム内の文書を破棄する時に発生する。BODYかFRAMESET要素に設定することが出来る。 onclick 要素上でポインティングデバイスのボタンがクリックされた時に発生する。ほとんどの要素に設定することが出来る。 <SPAN id="c1">変化させたい要素<

  • スライドするUIを実現するiSlider.js

    iAnime.jsのテスト用に作っていたスライドするUI。書いているうちにライブラリ化したくなったので、これもやはりMITライセンスとしてオープンソース化(Google Code iAnimejsよりダウンロード化)。たて・よこ・ななめ、自由にスライドさせることができることが特徴。"easein", "bounce"などのエフェクトも利用可能。 まずはごく基的なカード型のUIで横にスライドするもの。 こんどは同じコンテンツを縦にスライドさせるもの。アコーディオンUIと呼ばれることもある。エフェクトに"bounce"を使っている点に注目。 軽いのでiPhone/iPod touchでもサクサクと動くのが特徴。

  • Nifty Corners

    Nifty Corners: rounded corners without images By Alessandro Fulciniti Update This is the original article. The technique has been improved with better browser support and a lot of new features. The new article has been published on the 6th of April 2005. You can read it here. The final version is Niftycube. Rounded Corners with CSS are a hot topic in web design: I think that there are hundreds of

  • クールなタブUIを簡単に実現できるJavaScriptライブラリ「LivePipe」:phpspot開発日誌

    Control.Tabs : Projects : LivePipe Control.Tabs is a javascript library for creating accessible, flexible & unobtrusive tabbed interfaces in your applications or pages. クールなタブUIを簡単に実現できるJavaScriptライブラリ「LivePipe」。 次のようなCSSベースのクールなタブUIを簡単に実現できます。 prototype.jsベースのライブラリとなっており、次のようなソースで動きます。 タブ部分のHTMLはulタグとdivタグを使っており、シンプルで分かりやすいですね。 <script> Event.observe(window,'load',function(){ $$('.tabs').each(fun

  • HTML+JSでプレゼン:高橋メソッドとかモンタメソッドとか

    YAML版でのソースコードはこんな感じ ==New features *Image Slide *Takahashi Method *Monta Method ==Image Slide img*images/grass.jpg ===Takahashi Method ==Monta Method **{Mino Monta}* invented this method *Hide a few *{keywords}* first *Click those hidden words to show them ==Status *Pre-alpha *Not ready for public consumption *Source code is so dirty *Public beta is coming *{hopefully}* soon

  • JavaScriptとAJAXでページ上のマウスの動きを録画・再生するデモ

    ページ上で動かしたマウスの軌跡を記録し、再生することが可能になるJavaScriptやAJAXなどの組み合わせデモが公開されています。実際に試してみればわかりますが、記録している際には、特に記録されていると気づくような要素は全くありません。 応用としては、広告バナーのクリックについてアイトラッキング(目の動きを追う)の代わりに、マウスの移動する軌跡を記録して「マウストラッキング」が可能になったり、あるいはAJAXをフルに駆使したサイトにおけるユーザービリティの記録による操作の改善、あるいは各種スパイ行動などにも使えます。 実際のデモは以下から。 Record mouse movement using Javascript and AJAX http://pure.rednoize.com/movelogger/ 上記ページで四角いキューブの辺の周囲をマウスでなんどかぐるぐると回転させてみた

    JavaScriptとAJAXでページ上のマウスの動きを録画・再生するデモ
  • IT戦記 - 一行で IE の JavaScript を高速化する方法

    以下の一行をすべての JavaScript の前に読み込む /*@cc_on _d=document;eval('var document=_d')@*/ この一行を読み込むことによって IE での document へのアクセスが 5 倍速くなります。 たとえば 以下のように、読み込む前と読み込んだ後を比較してみます。 // Before var date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date - date); // 643 /*@cc_on _d=document;eval('var document=_d')@*/ // After date = new Date; for (var i = 0; i < 100000; i++) document; alert(new Date -

    IT戦記 - 一行で IE の JavaScript を高速化する方法
  • MOONGIFT: » JavaScriptによる多彩なグラフライブラリ「LT Diagram Builder」:オープンソースを毎日紹介

    Webページ上でグラフを描くというと、各種画像生成ライブラリを利用するだろうか。画像は手軽な反面、ダイナミックな生成ができず面倒な場合がある。 ダイナミックに描画を変更できると言えば、JavaScriptが便利だろう。そのようなニーズではこれを試してみよう。 今回紹介するオープンソース・ソフトウェアはLT Diagram Builder、JavaScriptベースのグラフ生成ライブラリだ。 LT Diagram Builderが対応しているのは棒グラフ、折れ線グラフ、関数グラフ、矢印、円グラフ、ガントチャート等多彩な描画に対応している。 ダイナミックな描画にも対応しており、関数の値を変更すれば、即座にグラフに反映する事ができる。JavaScriptの強みだろう。 また、PHPやASPでのグラフ生成にも対応している。結果的に出力されるのはJavaScriptのようだが、サーバサイドのデータを

    MOONGIFT: » JavaScriptによる多彩なグラフライブラリ「LT Diagram Builder」:オープンソースを毎日紹介
  • 第4回 JavaScriptでオブジェクト指向プログラミング ― @IT

    JavaScriptが、いま注目を浴びている。 JavaScriptがこれだけの注目を浴びた理由の1つとして、Ajax技術の登場とも相まって、JavaScriptに対する確かな理解の必要性が高まったという事情は否定できない。しかし、それだけでは説明できない急速な注目の理由として、もう1つ、JavaScriptという言語そのものが持つユニークさが開発者の目を引いたという点は看過できないだろう。 もっとも、このユニークさは同時に、多くの開発者が感じているJavaScriptに対する苦手意識と同義でもある。これまでVisual BasicやC#、Javaといった言語でオブジェクト指向構文になじんできた開発者にとって、JavaScriptのオブジェクト指向構文はいかにも奇異なものに映るのだ。ようやくクラスという概念を理解した開発者が、JavaScriptという言語の背後にたびたび見え隠れする「プロ

    第4回 JavaScriptでオブジェクト指向プログラミング ― @IT