Max Carlson (of OpenLaszlo) recently wrote about his toolkit’s approach to browser quirks, reminding me of a great Dev.Opera article on capability detection. Both argue for an approach that relies on the individual capabilities and quirks of a browser, rather than one that relies on sniffing as a first option. This is a noble idea and one we’ve started to integrate into Prototype over the last six
I wrote this about six months ago before starting work on base2. I decided not to post it at the time as I thought it sounded a little pompous. On reflection, they aren’t bad rules and I managed to stick to them. So, here the rules I wrote for myself back in October. 1. Be unobtrusive My HTML doesn’t want to know about your JavaScript. 2. Object.prototype is verboten! This is so important that it
2025-03 « 12345678910111213141516171819202122232425262728293031 » TwitThisはパスワードを送らないといけないのでブックマークレットを書いた。 POSTしろとかRefererを空にしろとかうるさいけど、これで行けた。 Twit! javascript:(function(){w=window.open('','_blank','width=520,height=300,resizable=1,scrollbars=1');f=w.document.createElement('form');f.setAttribute('action','http://twitter.com/statuses/update.xml');f.setAttribute('method','POST');i=w.document.create
同様のパターンは、インターネット上でも見られる。その典型的な例は、一連の「Flash」技術だろう。 インターネット上で閲覧可能なコンテンツを作成する主流技術はFlashではなく、当然HTMLがその座にいる。しかし、HTMLだけでは表現力が不十分なため、色やレイアウトを指定する「CSS」、プログラミングを行うための「JavaScript(ECMAScript)」、拡大してもジャギーのないベクターグラフィックを実現する「SVG」などの技術も生まれている。 これらを組み合わせれば、音や動き、対話性などを持つかなりリッチなコンテンツを作成できるだろう。しかし、関係する各種企業や団体の足並みは揃わず、このような技術が本当の意味で主流となったとはいい難い。たとえばマイクロソフトは自社のWebブラウザにSVGを実装していないし、オープンソース陣営はFirefoxがリリースされるまでは、強力かつ安定したW
2005年4月の初回リリースで、ちょうど「Ajax」という言葉が同年2月に誕生した頃に開発を始めたライブラリです。プロパティでなくメソッドを多用するなど、今から見るとあまりJavaScriptらしくない設計で、コードの内部構造もあまり洗練されていません。 Ajaxアプリケーションを構築していると、クロスブラウザーの対応やXMLデータを展開する際の面倒なDOM操作が気になります。クロスブラウザー対応のXMLHttpRequest(XHR)ラッパー機能と、XMLデータを扱いやすいJavaScriptオブジェクト形式へ展開する機能を搭載したJKL.ParseXMLライブラリを、2005年5月にリリースしました。 たった数行のJavaScriptコードを書くだけで、XMLデータを利用したAjaxアプリケーションを手軽に構築できます。JSON形式やCSV形式のデータの受信にも対応しています。 XHR
大字 kiwanami 写真集。 日替わり大サービス。 JavaScriptを触っていて気持ちいい一つの原因として、ハッシュとオブジェクトの境界が無いことがある。データとして扱いやすいため、メタ操作もやりやすい。先の勉強会の後の議論で出てきたJavaScript的Hashを実装。 class BlankSlate instance_methods.each { |m| undef_method m unless m =~ /^__/ } end class JSHash < BlankSlate def initialize(hash) @hash = hash end def method_missing(sym, *args) name = sym.to_s if name =~ /=$/ name = name[0..-2] val = args[0] if val.respond_
前回の「第4回:JavaScriptライブラリの作成」で作成したCalcライブラリでは、オブジェクトの初期化で特に複雑な処理は不要でしたが、より高度なライブラリになると多数の関数を定義したりループを回したりと、初期化処理の中で変数を必要になるシーンが増えてきます。 JavaScriptの変数スコープは「{}」で囲われたブロック単位でなく、関数単位になります。関数外でvar宣言した変数も全てグローバル変数として定義されるため、例えばライブラリ中で リスト5:calc.cgiサンプルCGI(Webサービス側) という初期化コードを記述した場合、tmpとiの2つのグローバル変数を利用(汚染)することになります。 ライブラリは他のプログラムと併せて利用するためのものですから、ライブラリ外のプログラムが変数tmpやiを別の用途で利用していた場合に影響が出てしまう可能性があります。 ライブラリの初期化
jQuery history plugin - Ajaxアプリで戻るボタンを押したときに、操作前の状態に戻すためのjQueryプラグイン にて紹介いただきました.ありがとうございます. この動作は、イベント発生時に履歴にURLを追加しておいて、戻るボタンが押されたときは、ブラウザのキャッシュを利用して操作前の状態に戻すという感じでしょうか? 動作原理ですが, 1.location.hashを書き換えて戻るボタンの履歴に残るようにする 2.iframeのopen/closeで履歴に残るようにする の2つをブラウザによって使い分けることで実現しています. 上記をすると,#以降の部分を変更させたものを履歴に残すことができます. 戻るボタンを押すと,#以降が以前の状態に戻るので,#以降の部分が変化していないか定期的にチェックすることで戻ったことを判定しています. Ajaxと戻るボタン・ブックマーク
jQuery 開発者向けのメモです. ずっと以前に,jQuery に関する日本語の情報がまだ少ない頃に作ったページですが, その後 jQuery を再び利用する機会があったので,最新バージョン向けに記述を更新しました. 住宅ローンシミュレーションです. jQueryを利用したフォームの動的な追加や,flotプラグインによるグラフ描画などを行っています. 本ページの記載に間違い等見つけた方はブログのエントリまで連絡いただけるとうれしいです. 最終更新:2009/1/10 jQueryとは jQuery は様々な処理を短く簡単に書ける JavaScript ライブラリです. 独自のXPATH/CSSセレクタを利用することで,多くのDOM操作を非常に簡単に書くことが出来ます. JavaScriptのDOM操作や,XMLHTTPRequest,XMLの操作などを覚えなくとも, Ajaxを利用したイ
history plugin This plugin helps you make your Ajax-driven page available for "Go Back" button and "bookmark" of browser. ブラウザ履歴を簡単に操作可能なjQueryプラグイン「jquery.history」。 「Ajaxなページで「戻るボタン」を機能させる方法」で紹介したその方法がjQueryのプラグインとしてライブラリ化されました。 動作確認は、デモ画面の、load1, load2, load3 リンクを押していき、ブラウザの戻るボタンで確認することが可能です。 「Ajaxなページで「戻るボタン」を機能させる方法」で解説したとおり、iframe を使ったりしているようです。 こういった機能はライブラリ化されていると便利、というかAjaxフレームワークには最初からついて
My current frog exaggerator of choice: var isMSIE = /*@cc_on!@*/false; Comments (67) Leave a comment Comment: #1 It seems to be the fastest and shortest way to know that, thank You! Comment: #2 ooops, maybe this one is even more horrible var isMSIE = /*@cc_on!@*/!1; reduced by 3 chars :rotfl: Comment: #3 […] Dean Edwards nous propose la méthode la plus courte (en terme de code )que j’ai eu l’occas
Dean Edwards: Sniff! My current frog exaggerator of choice JavaScriptでIEかどうかをたったの1行で判別する方法。 なんと、次の1行だけで、isMSIE 変数に、IEで見れば true 、そうでなければ false を代入することが出来ます。 var isMSIE = /*@cc_on!@*/false; 次のサンプルコードで確認しました。 <html> <script language="javascript"> var isMSIE = /*@cc_on!@*/false; if (isMSIE) { alert('IE!'); } else { alert('not IE!'); } </script> <body> </body> </html> IEであれば IE! を alert し、そうでなければ not I
Adobeは2日、Adobe Labsを通じてフリーのEclipse用JavaScriptエディタプラグイン「JSEclipse」をリリースした。今回のバージョンは「prerelease 2」となっている。 JSEclipseはAdobe Labsのサイトから無償でダウンロードすることができる。なお、ダウンロードするためにはAdobe IDの登録が必要。また、Eclipseプラグインであるため、Eclipseを使用できるようにしておくことが必要となる。 ダウンロードしたzip形式のファイルを解答し、pluginsフォルダ内の「com.interaktonline.jseclipse_1.5.5.jar」とfeaturesフォルダ内の「com.interaktonline.jseclipse_1.5.5.jar」ファイルを、それぞれEclipse本体のpluginsフォルダとfeatur
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く