アーカイブ2009年4月の

jQueryを-あなたはPerformacneに関する注意してください

私は性能とjQueryについての素晴らしい記事に出くわした。

資料では、何をjQueryを使って最適なパフォーマンスを達成するためにご注文くださいです。
これは、このような場合は、IDセレクタ、または自分がなぜ、調達などなどのタグを複数のクラスを取る必要がありますように、それを使用する必要がなぜのトピックをカバーします。
jQueryのパフォーマンスルール

のWebページ生成オンラインサムネイル

関係なく、私のすべてのJSのフレームワーク多くなる場合あります簡単にThumbailsウェブサイトをする場合は、起動することができるサービスを小さくご紹介します。
すべての必要なアカウントですPageglimpse 登録が成功した後、 リンクの絶対単にているの属性をimg srcタグ彼の側の。 これはのようになります次:

http://images.pageglimpse.com/v1/thumbnails?url=http://www.mysrc.de/&size=large&devkey=1234567890

mysrc_thumb

PageglimpseもAPIを持つ小さい。 どのような、ケースだけのGET文字列は、追加の属性を追加することができます。
これらが含まれます:

  • DevKeyは - >、また、一般的なは必須Web上のサービスを使用して
  • サイトへのURL - > WWWのアドレスは、サムネイルとして表示される
  • サイズ - Thumbailsの>サイズ

サムネールをすぐに生成されないため、ステータスチェックに要求を送信することができます。 要求がこのようになります:

http://images.pageglimpse.com/v1/thumbnails/request?

背景に"要求は?"その後、GETパラメータを追加できます。 彼女の例を見つけることPageglimpseのAPI

jQueryとフォームでAJAX -小さなチュートリアル

AJAXは1つの原則は、非常に単純な技術です。 要求を送信するのJSは、サーバー側でお問い合わせのプロセスにスクリプトをブラウザと印刷の表示結果を再度。 しかし、悪魔は、いつものように詳細にあります。 このポスト 、AJAX 少しガイドの使用方法に使用できるフォームを これまでのところJSのフレームワークの使用、jQueryを、ここで簡単です。

彼はまずように一度HTMLの標準構造フォームのだ。

  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
  <divのclass="block">
 <divのclass="done">
 <b>ダウンロードいただきありがとうございます。  / b>私たちはあなたの要求<を受けている
 </ Divは>
	 <divのclass="myForm">
	 method="post" action="saveData.php">を<form
	 <divのclass="input">
		 <label>は名</ラベル>
		 <inputのname="name" class="text" />
	 </ Divは>
	 <divのclass="input">
		 <label>は電子メール</ラベル>
		 <inputのname="email" class="text" />
	 </ Divは>
	 <divのclass="input">
		 <label>はコメントの</ラベル>
		 <textarea name="kommentar" class="text textarea" /> </ textareaの>
	 </ Divは>
	 <divのclass="input">

		 <input type="submit" id="submit"/>
		 <div class="loading_icon"> </ divの>
	 </ Divは>
	 </フォーム>
	 </ Divは>
 </ Divは>
 <div class="clear"> </ divの> 

特に何も。 各入力フィールドは、わかりやすいラベルで提供されます。 個々の入力を形成する容易にするためのラベルを持つdivでラップされます。 divを、クラスで"loading_icon"と"完了"の開始日には見えません。
CSSはこの問題をこのように実装できる:

  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 : center ; } .loading_icon { float : right ; background : url ( ajax-loader.gif ) no-repeat 1px ; height : 30px ; width : 30px ; display : none ; } .done { background : url ( iconIdea.gif ) no-repeat 2px ; padding-left : 20px ; font-size : 12px ; width : 70% ; margin : 20px auto ; display : none } . clear { clear : both } . block { width : 400px ; margin : 0 auto ; text-align : left ; } .input * { padding : 5px ; margin : 2px ; font-size : 12px ; } .input label { float : left ; width : 75px ; font-weight : 700 } .input input. text { float : left ; width : 270px ; padding-left : 20px ; } .input .textarea { height : 120px ; width : 270px ; padding-left : 20px ; } .input #submit { float : right ; margin-right : 10px ; } 本体(テキストが整列: センター;)(loading_icon フロート。:右、背景:  URL(アヤックス- loader.gif) はリピート幅1px、 高さヒ:30px;幅ヒ:30px;表示: なし;)。 行う (背景: のURL (iconIdea.gif) は、繰り返し 2px; パディング左:UL  フォントサイズ:12px;:70;%  マージン:20px 自動; 表示: なし)。 明確な(: 両方)。ブロック (幅:400px;マージンは:0 自動; テキストが整列: 左;) 入力 *(パディング:5px;マージン:2px;フォントサイズ:12px;)。ラベル入力 (フロート:左;幅:75px;フォント重量:700)。 入力は テキスト入力(フロート:左;幅:270px;パディング左:UL は) 入力は..テキストエリア (高さ:120px;:270px;パディング左 :ULは) 入力が  提出# フロート:右;マージンを:10px;) 

Sunは今我々が最終的に、AJAXリクエストの世話をすることができます。 我々が処理する方法を見てみましょう今、転送PHPスクリプトへのデータ。

表示コード JavaScriptを
  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 . ready ( function ( ) { //click event für submit button ( '#submit' ) . click ( function ( ) { //Daten von den HTML Feldern in JS-Vars übersetzen var name = $ ( 'input[name=name]' ) ; var email = $ ( 'input[name=email]' ) ; var website = $ ( 'input[name=website]' ) ; var comment = $ ( 'textarea[name=comment]' ) ; //die Daten sollen per GET an das PHP Skript weitergeleitet werden. Dafür bauen wir einen //String var data = 'name=' + name . val ( ) + '&email=' + email. val ( ) + '&comment=' + encodeURIComponent ( kommentar. val ( ) ) ; //alle Textfelder deaktivieren $ ( '.text' ) . attr ( 'disabled' , 'true' ) ; //Icon während des Requests einblenden $ ( '.loading_icon' ) . show ( ) ; //Request abschicken $. ajax ( { //Ort des Skriptes in dem die per GET übertragenen Daten verarbeitet werden sollen url : "saveData.php" , //Angabe der GET Methode, auch POST wäre möglich. Allerdings nur sinnvoll //bei größeren Datenmengen type : "GET" , //Daten die gesendet werden sollen data : data , //bei Antwort des Requests (Response) success : function ( reqCode ) { //wenn saveData.php true bzw. den Status 1 zurückliefert if ( reqCode == 1 ) { //verstecken des Formulars $ ( '.form' ) . fadeOut ( 'slow' ) ; //anzeigen der Erfolgsmeldung $ ( '.done' ) . fadeIn ( 'slow' ) ; //wenn der Request eine Form von false zurückschickt, Fehler ausgeben. } else { alert ( 'Fehler beim Abschicken des Formulares.' ) ; } } } ) ; return false ; //der return wird benötigt, damit das Formular nicht tatsächlich abgeschickt wird und //sich nicht wie ein normales Form mit Seiten Refresh verhält. } ) ; } ) ; $(ドキュメント)。 レディ (関数 ()($('入力 = / 名前 /クリックイベントの送信ボタン ('#送信')。変換 バーズでvar - in フィールドのJSは、HTMLをクリックして から  関数()(/ / データ [名前=名前]');メール= $('入力[名前= Eメール] varを ') ヴァールウェブサイト= $('入力[名前=ウェブサイト]を'); ヴァールコメント= $('textareaの[名前=コメント] ')/ /データは、スクリプトのPHPにはは、GETを転送されます。我々は、名前を =' 名前 ='+ 文字列var  データ構築/ / valが ()+'&Eメール='+メールください。val()+' &コメント='+われ(kommentar. ヴァル /すべてのテキストフィールドをオフ$('/())。 テキスト')。attr  ('無効になって、''); / /アイコン ' で( 要求 を示す$。loading_icon を' ショーは (); / $を送信します。 委任 コミュニティソーシャルディレクトリ 要求/((/される処理をすべきデータスクリプトのGETでイス/)URLを :"saveData.php"、/ / 可能性を指定すると、POSTをするメソッドはGET。ただし、のみ有効/ /時のデータ量が大きい のタイプ:"データGET"、/ /送信されるデータは:/ trueの場合、またはsaveData.php / データ / /応答要求(応答)は成功 :関数 (reqCode)( )(1ステータスの返り(reqCode == / /'非表示の フォーム を$(。フォームを')。フェードアウトを('遅い')/ /表示 成功メッセージを$() 実行'。fadeIn(' 遅い ' )/ /は、場合、要求は、出力エラー 、虚偽の形式です返される。) 他( アラート (' エラーfalseが返さ  しながら送信 フォーム.');)))) の/ / 戻り値 がされていませんフォームが必要なので、実際に送信される、/ /は.));));を持って行動して、フォーム、通常のページとして更新しない 

全ての魔法が行われて ;) ...

デモ

jQueryのAPIのブラウザバージョン1.3デスクトップ用

jquery-api

http://api.jquery.com/見つけるjQueryのAPIのブラウザバージョン1.3以降。
非常に有用な部分が必要な開発の高速回を手伝って。

ブラウザはすべてのコア機能と明確にダールの完全なAPIを提供します。

しかし、最も美しいものは、デスクトップであることのすべては、AIR アプリケーションのそこにある ただインストールして、いつでも全体的な話を取得し、すぐにご利用いただけます。

コンテンツの概要:

  • 最新のjQueryおよびjQuery UIドキュメントです。
  • 多くの場合、お気に入りとしてマークする必要がありますページの可能性。
  • コード例でシンタックスハイライト。
  • ライブデモのブラウザ内で。
  • リンクを編集し、コードの例を実験。

パンくずjQuery'd - jBreadCrumb

jbreadcrumb3

全く新しいではなく、私はまだ印象的な検索が。 そして、ハイライトのそれらのことをしないことがありますそれは知っている。 jBreadCrumb - パン粉表現に現代的なプラグインjQueryの。

プラグインは同様にされた書かれたパン長いパン粉深くネストされた 、またはフォールドする能力をページ名があるに対処するためにはと極端。
美しいはEinklappeffekt要素または長さの数によって調整することができます。

プラグインは使用してさらに緩和プラグインコンテンツを jQueryの拡大表示または。

あなたが必要とプラグインを使用するにはのようなものです:

表示コード JavaScriptを
  1
 2
 3
  . ready ( function ( ) { jQueryの(ドキュメント)( 準備する (関数 ()
	 ) . jBreadCrumb ( { easing : 'swing' } ) ; jQueryの("#パンくず")。jBreadCrumb  ((緩和:'スイング'));
 )) 

デモおよびあなたが見つけるためにファイルをダウンロードする公式サイト。

CSSの対jQueryの

簡単な例ではどのようにCSSはとJS -フレームワークと同じ機能がどのような違いが、同じ時間を提供して表示されます。
次のコード部分はどこにアシスト純粋なCSSの下の画像のアイコンをズームを指定します。 これは、空のspanタグへ私たちのアイコンを配置するに挿入されます。

  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
  <divのid="picGallery">
     <h2> CSSコード</ H2の>
     <aのhref="someBigPic.jpg">
         <span>の</スパン>
         src="someSmallerPic.jpg" alt="" />を<img
     </>
     <aのhref="anotherBigPic.jpg">
         <span>の</スパン>
         src="AnotherSmallPic.jpg" alt="" />を<img
     </>
 </ Divは> 

CSSはこのようになります:

 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 
 width : 100% ; overflow : hidden ; } #picGallery a { position : relative ; float : left ; margin : 5px ; } #picGallery a span { display : none ; background-image : url ( zoom.png ) ; background-repeat : no-repeat ; width : 48px ; height : 48px ; position : absolute ; left : 15px ; top : 15px ; } #picGallery img { border : solid 1px #999 ; padding : 5px ; } #picGallery a :hover span { display : block ; } #PicGalleryは (幅:100%;: 隠された オーバー;)# picGallery( 位置:相対 ;フロート :; margin - leftや:5px;# はpicGalleryをスパン表示:なし); 背景 イメージ :のURL(zoom.png を); 背景リピート: なし繰り返し、 :48px;高さ:48px;位置: 絶対; :15 pxの; トップ:15 pxの ;)#picGallery img(国境: 固体 1px#999; パディング:5px;)# picGallery: ホバースパンは(表示: ブロック;) 

これまでのところ良い。 今jQueryの助けを借りて。 HTML部分はほとんどidentsichです。 しかし、我々はまだspanタグが必要です。

  1
 2
 3
 4
 5
 6
 7
 8
 9
  <divのid="picGallery">
     <h1> jQueryのコードは</ h1という>
     <aのhref="someBigPic.jpg">
         src="someSmallerPic.jpg" alt="" />を<img
     </>
     <aのhref="anotherBigPic.jpg">
         src="AnotherSmallPic.jpg" alt="" />を<img
     </>
 </ Divは> 

JSコードは、スパンを生成し、表示..の世話をする

表示コード JavaScriptを
 1 2 3 4 5 6 7 8 9 10 11 
  . ready ( function ( ) { $(ドキュメント)。 レディ (関数 ()( 
       / /"の"picGallery追加ごとにIDタグのdivとspanタグを追加
       ) . append ( "<span></span>" ) ; $("#PicGallery")。追加("<span>の</ スパン>");
       標準フェージング機能のjQueryの/ /
       ) . hover ( function ( ) { $('#Gallery2")。ホバー  関数()(
       ) . children ( "span" ) . fadeIn ( 600 ) ; $(この)の お子様 ("スパン")。FadeIn(600);
       )、
       関数 ()(
       ) . children ( "span" ) . fadeOut ( 200 ) ; $(この)の お子様 ("スパン")。 フェードアウト (200);
       )); 
 )); 

それだけです。 もちろん、CSSはHTMLドキュメント内で参照する必要がありますが、それは:ホバープロパティは省略することができます。 それを別のギャラリーのスクリプトに参加できる必要に応じてクリックするだけで新しいウィンドウで画像が開き、と思います。 私は機会はまだ想像することを望む。
グッドラック!

Notimoo -のMooToolsはうなり声のMac

とNotimooはMooToolsは知られていますからMac" うなり"のアプリケーションです
何かが発生した場合うなり声は、Macその上にユーザプログラムに通知すると。

Notimoo自体はNotzienのユーザー"うなり声"ページの端にスタイルを示します。

実装の簡単例:

表示コード JavaScriptを
  1
 2
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
  表示通知から隅左下が/それはとてもマネージャ/今を作成
 new Notimoo ( { 変数名 notimooManager Notimoo = 新しい 
    , locationVType:'下'、
    locationHType:'左'
 ));

 / /消えていない中に通知します。
 notimooManager。 ショー ((
     , タイトル:' テスト通知'、
     メッセージ:' この通知されます自分disapperはその。  クリックして、それがありますあなたが閉じます。'、
     粘着: 
 )); 

全体Notimoo プロジェクトは、Googleによるものです下のMITのホストコードのライセンス。
デモは、全体のここにある。

jQuery UIがCSSのフレームワーク

開発者やデザイナーの間で簡略化設計のコラボレーションの表面に今日では、かつて小さな余談。
jQueryは、独自のCSSのフレームワークをしています。 YAMLのとは対照的で、おそらく1つのこの分野でbekanntetestenフレームワークは、CSSのUIフレームワークは、私の意見でも扱いやすいが、非常に強力なされていません。 まず、クラスの要素の名前が与えられます。 今、あなたは、単にこれらの基準を保つし、外観を変更することができます"その表面コンポーネントの迅速かつ容易にテーマを変更して好きです。

また、実装は、"丸いコーナーが"CSS3のサポートします。 ブラウザでもちろん、この時点でW3C勧告後の。 IE6はもちろん、このようなニーズを個別jQueryのCSSのフレームワークで調整することではない。 ただ、まだ透明pngがIE6の、すぐに変更することがでサポートされていることがあります。 しかし、これはまだ古いのCSS PNGFix必要です。
することができますFramework一般についての情報をCSSの下にはテーマのAPIを検索する。

また、非常に興味深いですテーマスクーター。 テーマに設定APIの基準に従うことによってCSSとして独自のページで撮影することができますので、簡単に魅力的なユーザーインターフェイス設計することができます。

jQueryのメディアプラグインは、型から統合異なるMIME

先日は、さまざまなプレイヤーやメディアへのjQueryプラグインを発見しました簡単にjQueryを使って統合します。 選手のショートリスト:

  • Quicktimeが
  • フラッシュ
  • ウィンドウズメディアプレーヤー
  • リアルプレーヤー
  • Silverlightは
  • インラインフレーム

また、直接その一人の選手を介して処理されるファイルを呼び出すことができます。 しかし、確認当然のことながら、それぞれのプラグインのプレーヤーは、すでにお使いのブラウザにインストールされてください。 メディアプラグインは非常に単純な操作をansichしています。 これは、メディアに簡単なタグを置き換えますはるかに長く、より複雑なしているブラウザに必要な埋め込みコードをします。

どのようにこのプラグインを使用しての小さな例では、PDFを直接Webサイトに表示されることができます:

表示コード JavaScriptを
  1
 2
  /)はイベントのDOM - Readyの内のオプション(通常は2 /電話メディアプラグインを
 ) . media ( { width : 500 , height : 400 } ) ; $('A.media')。 メディア ((幅:500高さ:400)); 

HTMLコードは、このようになります:

  1
 2
 3
 4
 5
 6
 <scriptのtype="text/javascript" src="jquery.media.js"> </スクリプト> <! -メタデータのサイズがですが、サンプルのプラグインに表示されますこれで必要です- > <スクリプトの種類を="テキスト/ javascriptのは"src ="jquery.metadata.js"> </スクリプト> <a class="media" href="guice.pdf"> PDFファイル</> 

それだけです。 あなたは、ものを見つける全体することができますここ..

テキストオーバーフロー- jQueryプラグインの省略

またMicrosoftは長い間、Internet Explorerで開発されているいくつかのCSSの機能が提供しています。 1つの機能これらの、 オーバーフロー"も祀られてですテキスト " プロパティCSS3の 、現在Safariで、オペラが祀られている既に。 唯一の問題は、Firefoxはまだそれをサポートしていません。 (ウィル、それもが行うようにバージョン3.1の)

テキストがのコンテナよりも長い場合はテキストベースのオーバーフローは、ユーザを示してより多くのテキストは、小さなの参照を含んでいます。
Normallfallで3点の形だけです。

デヴォンガベットが小さいjQueryのプラグインを、このプロパティはFirefoxが利用可能です書いている。
特にCMSやのような分野で、これは興味深いです。 それがここに文字列操作は、PHPなどを使用しているとして、 与えることができます。

簡単な例:

表示コード JavaScriptを
  1
  ) . ellipsis ( true ) ; $("#id")が。 省略 (真の); 

プラグインがかかる彼女はここデモはここ