我正在嘗試使用JQuery構建思維導圖工具,並且我正在努力編輯div內容。如何使用JQuery單擊編輯輸入值
我寫了一個函數,允許我將文本添加到(mind-container)div。它運作良好。 但是,一旦它被設置,它不會讓我編輯文本。
這是一個活生生的例子:https://jsfiddle.net/TiOw87/c9wwe81d/5/
這裏是我的jQuery函數:
$('.mind-container').click(function(){
$('input').addClass('active');
$('input').parent().find('input').focus();
$('input').keyup(function(event){
if(event.keyCode == 13){
var string = $(this).val();
$(this).removeClass('active');
if ($(this).has("p"))
{
$(this).parent().html("<p>"+ string +"</p>")
}
else
{
$(this).parent().append("<p>"+ string +"</p>")
}
}
})
});
而我的HTML:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<body>
<div id='board'>
<div class='mind-container' id='mind-master'>
<input type="text">
</div>
</div>
</body>
我想能夠點擊div並能夠編輯已經在其中的輸入文本的值。
感謝您的幫助
爲什麼不在你的div上使用'contenteditable'屬性?在這裏閱讀http://html5demos.com/contenteditable,並在這裏 https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/Editable_content –