1
我有像這樣的列表:jQuery UI的可排序的子觸發
<ol id="page_items">
<li>
<label for="page_body_1">Content Area 1</label>
<textarea name="page_body_1" class="page_content_area" rows="10"></textarea>
</li>
<li>
<label for="page_body_2">Content Area 2</label>
<textarea name="page_body_2" class="page_content_area" rows="10"></textarea>
</li>
</ol>
頁面加載時,#page_items
變成TinyMCE的編輯器。我想要的是定義li
元素是否被排序爲<label>
而不是其他子元素li
的元素。所以開始排序的唯一元素就是標籤。
這裏是我的jQuery:
$(document).ready(function(){
$("#page_items").sortable({
activate: function(event, ui) {
var EditorID = ui.item.find('textarea').attr('id');
if (EditorID){
tinyMCE.execCommand("mceRemoveControl", false, EditorID);
$('#'+EditorID).hide();
}
},
stop: function(event, ui) {
var EditorID = ui.item.find('textarea').attr('id');
if (EditorID){
$('#'+EditorID).show();
tinyMCE.execCommand("mceAddControl", false, EditorID);
delete EditorID;
}
}
});
});
如果你想知道,我禁用TinyMCE的,因爲在Firefox中,移動的iFrame周圍的DOM清除它的內容和不允許的焦點回來就可以了。
如果單擊的元素不是標籤,是否有取消排序的方法?
如果有人有任何代碼清理建議,他們也歡迎!
謝謝。