助けてくれてありがとう!私は次のことをやった:
- 順序なしリスト (ul) をタブとしてスタイル設定
- 各リスト項目 (li) をドラッグ可能にしました
- li の onstop イベントで、現在のマウス位置で (iframe を使用して) ダイアログを開きます。
- iframe の src 属性をタブ コンテンツに設定します。
以下のコード スニペット:
$('li').draggable({
iframeFix: true,
stop: function (event) {
var title = //give a title
var newId = //create a unique id
$('#draggableTabsContainer').append('<div id="' + newId + '"></div>');
var x = $(this).position().left;
var y = $(this).position().top;
$('#' + newId).dialog({
iframe: true,
autoOpen: false,
width: 700,
height: 700
});
$('#' + newId).append($("<iframe id='frm" + newId + "' class='tab-iframe'/>")).dialog('open');
var url = $(this).find('a.tab').data('src');
$('#frm' + newId).attr('src', url);
$('#' + newId).dialog({ position: [x, y], 'title': title });
$(this).remove();
}
});
ul/li の HTML:
<ul id="tablist">
<li><a class="tab" href="#" data-src="controller_name/view_name1"><b>View 1</b></a></li>
<li><a class="tab" href="#" data-src="controller_name/view_name2"><b>View 2</b></a></li>
</ul>