2011-06-29 21 views
4

クロスサイトウィジェットをインポートするたびに、特定のネームスペースを持つカスタムタグが付いてくることが多くの場所で分かりました。私の質問は、JavaScriptでこれを宣言し、使用し、変更する方法です。xhtmlのカスタムタグでネームスペースを指定する

たとえば、Googleの+1ボタンとします。インポートは基本的に、javascriptをインポートして<g:plusone></g:plusone>というタグをgと名前空間としてインポートします。

私はソースコードhttps://apis.google.com/js/plusone.jsを見て、どのようにして名前空間をjavaScriptで定義してインポートしたかを調べるのはかなり難しいと感じました。

基本的に3つの機能を実行したいと思います。

  1. ウィジェットタグ<x:y></x:y>を定義し、javascriptを使用して動的HTMLを解析することができます。
  2. このhtmlコンテンツには、インポートする単一のjavascriptで処理される動的コンテンツ、アニメーション、およびajax呼び出しが含まれます。
  3. 1ページに複数のウィジェットをインポートして、すべてのウィジェットを依存して動作させることができます。つまり、ある場所で更新すると、他の場所が更新されます。
+0

は、私がいつも思っているような構造で '': 'ns'は私達のタグの名前空間があり、' tagname'はタグ名そのものです。それを明確にしてください。 –

+0

そのことを申し訳ありません。質問を変更します。 –

+0

あなたのコードで "x:y"を使うだけで何ができないのですか? – jtbandes

答えて

0

Googleは彼らのJavaScriptを名前空間が、私はそれが

XMLタグに関連しているとは思わない、私は実際にはないが長すぎる前に、この記事に出くわしました: http://www.zachleat.com/web/selecting-xml-with-javascript/ と中古必ずSarissa: http://dev.abiss.gr/sarissa/

独自のxmlタグを定義し、javascriptを使用して内容を変更できます。また、Saraconaと組み合わせたTaconite http://jquery.malsup.com/taconite/が、あなたが探しているものを提供する可能性があります。

javascriptの名前空間に関する限り、スコープには関数またはオブジェクトが必要です。この例では

var x = { 
    y: function(){} 
}; 

は、yは()は、xに名前空間されているので、xyは()

関連する問題