0

たくさんのアイテムが掲載されたページがあります。各項目にはウィジェットがあり、クリックすると YUI ポップアップ スタイルのオプション メニューが表示されます。これまでのところ、これはうまく機能しています。

jQuery/ajax 呼び出しを使用して新しいアイテムをページに挿入し、既存のアイテムを押し下げています。アイテムは正しく挿入されていますが、アイテムを呼び出すウィジェットの新しい位置と一致するように、アイテムのポップアップ メニューの位置を更新する必要があります。私が知る限り、それらはページ座標として計算され、ページがレンダリングされるときにメニュー オブジェクトと共に保存され、ajax 挿入によって自動的に更新されません。

これが私の問題です: メニューごとにメニュー項目を再計算し、removeListener() を実行して古いメニューを強制終了し、addListener() を実行して新しいものを挿入する jQuery を試しました。これにより、メニューが呼び出されたときにメニューの位置が適切に更新されますが、他の何かが壊れます。ウィジェットをクリックしてメニューを表示し、ページの別の場所をクリックすると、メニューが消えるのではなく画面に残ります。他のウィジェットをクリックすると、それらも表示されます。注: コンソールにエラーは表示されません。メニューの表示中に ESCAPE キーを押すと、メニューが正しく非表示になります。

これを行う方法があるはずですが、迷っています。手がかりはありますか?おそらく、メニューのコンテキスト情報を更新するだけで十分です。私を台無しにしているように見える削除と追加のリスナーシーケンスなしでそれを行う方法はありますか? ありがとう!

4

1 に答える 1

0

アップデートで指摘されているように、すべてが引き続き良好です。私はこれに答えることを宣言しています。

于 2011-02-27T22:29:05.743 に答える