2010-08-29 66 views
4

如果我对contenteditable物品做“jquery sortable”,该物品将永远不可编辑。jQuery在contenteditable物品上排序

我要指出,在IE中的每一件事工作正常,我在FF这个问题3.6.8

<html> 
<head> 
    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" type="text/javascript"></script> 
    <script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/jquery-ui.min.js" type="text/javascript"></script> 
    <script> 
    $(document).ready(function(){ 
     $('#sortable').sortable(); 
    }); 
    </script> 
</head> 
<body> 
    <span id="sortable"> 
    <p contenteditable="true">test</p> 
    </span> 
</body> 
</html> 
+0

你不应该在'span'标签内部有'p'标签 - 它是无效的HTML,并且可能会导致问题 – 2010-08-29 09:11:19

回答

6

也许使用手柄?

<div id="sortable"> 
    <div> 
     <span class="handle">Perhaps some icon here</span> 
     <p contenteditable="true">Editable text..</p> 
    </div> 
    <div> 
     <span class="handle">Perhaps some icon here</span> 
     <p contenteditable="true">Editable text..</p> 
    </div> 
</div> 


$("#sortable").sortable({ 
    handle: 'span' 
}); 

P.S.你不应该在<span>'s中嵌套<p>标签:)

+0

,但通过使用句柄:'span',容器不能再排序! – adrakadabra 2010-08-29 10:43:48