在我當前的項目中,我在某些TEXTAREA's
上實現了jHtmlArea所見即所得插件,這些插件可拖動且可排序。唯一的問題是,一旦你開始拖動它們,他們會丟失IFRAME
中插件屏蔽相關聯的3210的所有數據。 jQuery的.clone
功能正在使用,但它自己並不承載所有數據,甚至將其設置爲.clone(true)
或.clone(true, true)
不保留拖動的數據。例如:通過拖拽保存IFRAME內容
有沒有辦法保存的內容?
在我當前的項目中,我在某些TEXTAREA's
上實現了jHtmlArea所見即所得插件,這些插件可拖動且可排序。唯一的問題是,一旦你開始拖動它們,他們會丟失IFRAME
中插件屏蔽相關聯的3210的所有數據。 jQuery的.clone
功能正在使用,但它自己並不承載所有數據,甚至將其設置爲.clone(true)
或.clone(true, true)
不保留拖動的數據。例如:通過拖拽保存IFRAME內容
有沒有辦法保存的內容?
我想,我終於想通弄明白了,在這裏:
後,我意識到,要在阻力並沒有完全消失的消失,似乎內容,但被保存在某個地方,答案慢慢地(其中我不知道),並會在頁面重新加載/刷新後出現在富文本編輯器的IFRAME中(無法在jsfiddle中重新加載頁面時從頭開始說明誰的事情)。一旦我終於意識到,那麼我使用jHtmlArea插件的「dispose」功能(我認爲它們應該有可能命名爲「destroy」),然後立即重新初始化插件,然後數據將重新出現。由於我無法弄清楚如何識別DOM中有一個被拖動的克隆(或者至少是如何創建它的jQuery對象)的行,我在所有TEXTAREA上進行了處理並重新初始化,然後找到當我使用.each()方法定位每一個時,它最有效,否則有時候它們中的一些不會被處置然後重新初始化(參見前面提到的http://jsfiddle.net/5QL7W/24/的示例)。
相關代碼:
var fixHelperModified = function (e, tr) {
var $originals = tr.children();
var $helper = tr.clone();
$helper.children().each(function (index) {
$(this).width($originals.eq(index).width())
});
return $helper;
},
updateIndex = function (e, ui) {
$('td.index', ui.item.parent()).each(function (i) {
$(this).html(i + 1);
});
$('#sort TBODY TEXTAREA').each(function() {
$(this).htmlarea('dispose');
$(this).htmlarea({
toolbar: ["bold"]
});
});
};
$("#sort TBODY").sortable({
helper: fixHelperModified,
stop: updateIndex
});
這裏有一個更新的「小提琴」嘗試使用一些幫助從http://stackoverflow.com/questions/1595645/jquery-iframefix-on-a-sortable/3563096#comment20752056_3563096 : http://jsfiddle.net/5QL7W/6/ –
它現在工作好多了,只是現在數據的成功重新加載是隨機的: http://jsfiddle.net/5QL7W/24/ –