2

誰でもこれの違いを説明できますか:

更新 1 - フレーズを元に戻す

container.data("state", { test: 1 }); // works

この:

 container.data["state"] = { test: 1 }; // doesn't work

最初の構築は機能するが、最後の構築は機能しないことがわかりました。呼び出しにより、コンテナに初期データが入力されます。つまり、呼び出されたときの「状態」は空白です。

4

1 に答える 1

2

data配列ではなく関数です。2 番目のスニペットで関数のインデックスにアクセスしようとしていますが、これは機能しません。

ドキュメントを参照してください: http://api.jquery.com/jQuery.data/

たとえば、ブラウザで開発コンソールを開き、次のように入力します。

$("a:eq(0)").data

配列ではなく、長い関数定義を取得します。

function (a,c){var d,e,g,h=null;if(typeof a=="undefined"){if(this.length){h=f.data(this[0]);if(this[0].nodeType===1&&!f._data(this[0],"parsedAt.... // continued
于 2012-08-15T15:53:15.980 に答える