活躍の舞台をどんどん広げているJavaScript。本連載では、JavaScript関連書の執筆でおなじみの古籏一浩氏が、最新の活用Tipsから今後注目のAjax/JavaScriptライブラリーの解説まで、“楽しくできて役立つネタ”をお届けします。
活躍の舞台をどんどん広げているJavaScript。本連載では、JavaScript関連書の執筆でおなじみの古籏一浩氏が、最新の活用Tipsから今後注目のAjax/JavaScriptライブラリーの解説まで、“楽しくできて役立つネタ”をお届けします。
「デスクトップアプリケーション並みの美しいユーザーインターフェイスが作れる」と評判のJavaScript/Ajaxフレームワーク「Ext JS」の最新版、「Ext JS 3.0」が7月6日にリリースされました。「古籏一浩のJavaScriptラボ」第4回は、実際に簡単なサンプルを作りながらExt JSの魅力に触れる入門記事をお届けします。 (編集部) Ext JSとは? 「Ext JS」は、米Ext JS, LLCが公開しているオープンソース(※)のJavaScript/Ajaxフレームワークです。「フレームワーク? ライブラリーなら聞いたことあるけど……」と首をかしげる人も多いかもしれません。「Prototype.js」や「jQuery」、「Yahoo UI Library」「MooTools」などの有名なJavaScript/Ajax“ライブラリー”に対して、Ext JSは“フレームワ
ちょっと勘違いしていたのでメモ。 Ext.getCmpはIDでオブジェクトを取得する。 オブジェクトが返ってくる。 Ext.ComponentQuery.queryはxtypeで検索したり、IDで検索したり、プロパティで検索したりできる。 配列が返ってくる。配列の中に指定した条件で取得出来たオブジェクトが入っている。 Ext.flyまたはExt.getはExt.Elementを取得する。 Ext.ElementはDOMのエレメント。HTMLファイルに最初から書かれていたエレメントやExt.Componentが生成したエレメント。 例えば、Ext.fly('panel')で取得したオブジェクトはExt.Elementなので Ext.fly('panel').show();と書くとエラーになる。
Ext.jsの使い方メモです。Core機能をまとめてみようと思います。 最初に必要なライブラリを読み込みます。(ext-1.0に展開されたソースがある前提) <script src="ext-1.0/adapter/yui/yui-utilities.js" type="text/javascript" charset="utf-8"></script> <script src="ext-1.0/adapter/yui/ext-yui-adapter.js" type="text/javascript" charset="utf-8"></script> <script src="ext-1.0/ext-all-debug.js" type="text/javascript" charset="utf-8"></script> スタイルシートの読み込みます。 自分で全部定義するのは大変なの
Guest Blog Post CNX では、ほとんどのExt JSで行う開発作業はゼロから新しいアプリケーションを生成する事ですが、時々我々のお客様からパフォーマンス問題、バグ、構造問題で既存の内部作業を取り扱う依頼がきます。 この「清掃人」の作業を長い間を関わって来たので、検査しているアプリケーションによく表れるいけないコーディング習慣に気づいてきました。 この10年間を渡って行って来た作業をレビューして、Ext JSのアプリケーション開発でやってはいけない10のことのリストを作成しました。 1. コンポーネント構造の異常や余計な入れ子 開発者がよくする間違いは意味なくコンポーネントをネストすることです。 これを行うとパフォーマンスも傷つきますし、枠が二重になったり意外なレイアウト挙動をしめすなど、アプリケーションにおかしなことが発生する場合もあります。次の1Aの例では、一つのグリッド
Ext.getだとExt.Elementが返ってきて、Ext.getCmpだとExt.Componentが返って来る。 何が違うのかというと、簡潔に言えばレイヤーが違う。 分かりやすくなるのかどうか分からないが、具体例を挙げる。 この前書いたCardLayoutのサンプルの一部。 //PanelはExt.getCmpで取る var card = Ext.getCmp('panel-parent').getLayout(); //ButtonはExt.getで取る Ext.get('button-1').on('click', function(){card.setActiveItem('panel-1')}); Ext.get('button-2').on('click', function(){card.setActiveItem('panel-2')}); Ext.get('butto
var conditions = new Ext.form.FormPanel( { title : '抽出条件', defaults : { border : false }, bodyStyle : 'padding:5px', onSubmit : Ext.emptyFn, submit : function() { this.getForm().getEl().dom.action = '/customer/csv_output'; // CSVを返すサーバ側のURL this.getForm().getEl().dom.submit(); // HTMLのDom要素を取得しformのサブミットを行う }, items: [] // 省略 }); conditions.submit(); こうすることで「conditions」フォームの内容が普通にサブミットされて、ブラウザのダウン
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く