カスタム ポータルのようなインターフェイスを構築するには、3 列のレイアウトに配置された単純な HTML div 要素を使用できます。例えば
<ul id="col1">
<li><div id="portlet1">...content...</div></li>
<li><div id="portlet2">...content...</div></li>
</ul>
<ul id="col2">
<li><div id="portlet3">...content...</div></li>
<li><div id="portlet4">...content...</div></li>
</ul>
<ul id="col3">
<li><div id="portlet5">...content...</div></li>
<li><div id="portlet6">...content...</div></li>
</ul>
JQuery sortable() API を使用して、要素をドロップする場所を実際に示すプレースホルダー値ですべてのli要素をソート可能にします。並べ替えが完了したら、onDrop() API を使用して、各ウィジェットの場所を保存します。このシナリオでは、次のように保存できます。
portlet1 -- 1,1 (row,column)
portlet2 -- 2,1
portlet3 -- 1,2
portlet4 -- 2,2
portlet3 -- 1,3
portlet3 -- 2,3
これらの位置は、DOM 内のソート可能な要素の位置を計算することで取得できます。これらの位置を取得した後、カスタム データベースに保存するか、ブラウザーでオフラインにすることができます (HTML5 localStorage を使用)。次回のアクセス時に、取得した行と列の値を使用してポートレットを再描画できます。
これがお役に立てば幸いです.. http://network.nature.com/workbenchで実行可能な例を見つけることができます (再配置後にウィジェットを保存するには、登録してログインする必要があります)。