jQueryのメモ
フロントの実装の際に、たまに使用するjQueryの小ネタです。
リスト
- Customer Service - O'Reilly Mediaを読んで
- jQuery.param
- jQueryでAjax
- (function($){...})(jQuery);の意味
- バージョンアップ
- eventデリゲートについて学ぼう
Customer Service - O'Reilly Mediaを読んで
折角読んだので、自分が思ったことをメモっておきます。理解が間違ってたらすいません。
- documentのready使うんじゃなくて、$()で。
- タグに属性セットするなら、有名所(“css”, “val”, “html”, “text”, “data”, “width”, “height”, or “offset”)はメソッド使おう、そっちの方が分かりやすいが気するから
- タグのオブジェクトを作るときは、第二引数にまとめて入れてセットしてしまう、一回で終わるしさ
- bindにnamespaceが使えるなんてビックリです、でもそこまでカッチカチにjquery使ったことないから用途が見いだせず
- queueさせないと他のアニメーション処理待たないってすごいな、色々できるんだろうな
- 複数のajax通信を走らせた場合、ajaxStartとajaxStopって全体で1つとかできんのかしら
jQueryでAjax
"jQuery によって Ajax 開発を改善する"を読んで、少し勉強させてもらいました。
Javascript(XMLHttpRequest)をガリガリ書くのと、jQueryを使うのでは確かに作業量に格段の差がでるのがわかりました。jQueryは出来合いの物であるため自由に出来る部分が少なく不便なのかと思いきや、そんなこともないようです。パラメータや関数の呼び出して挙動を色々と制御出来ることがわかりました。setupAjaxなんて関数があるのはしりませんでした。
レスポンスを処理する部分では、getElementsByTagNameが使われていたためなぜjQueryのセレクタで記述されなかったのか少々気になりました。速さを求めるのであればやはりDOM操作の方が良いということなのでしょうか。それともただ面倒なだけかもしれませんが。。。
(function($){...})(jQuery);の意味
自分はjQueryをたまに使っいますが、(function($){...})(jQuery);の意味が今までよく分かってませんでした。ふと疑問におもったため、ググったところ"jQueryと他のライブラリを同時に使用する方法 - jQuery - StackTrace"で教えて頂きました。$を100% jQueryのものにするために記述しているということがわかりました。関数の呼び出し時に、引数としてjQueryが渡されれば、確かに$は100% jQueryになりますね。やはり物事にはそれなりの理由があるものですよね。
バージョンアップ
jQueryのバージョンを上げようか迷っていて見つけたページです。"jquery-1.2.6.jsからv1.4.2へバージョンを上げたところtabが機能しな... - Yahoo!知恵袋"。自分も思い切ってあげてみようと思います。
eventデリゲートについて学ぼう
"jQueryを良くする25のTIPS - to-R"で勉強させてもらった小ネタです。イベントの追加の際に無駄なオブジェクトを作成しないというお話です。ページを見てもらえばわかるのですが、クリックされたオブジェクトを使用することで確かに省エネできるじゃんって思いました。