私は現在ウェブサイト上で作業しています。そこでは、ユーザは、所属するコードを含む新しい曲をデータベースに書き込んで挿入する必要があります。 物事をまとめて、かなり早く、ここに私の問題があります:div内のdivでカスタムテキストエリア/ contenteditable
idが "#textarea"、属性がcontenteditable = "true"のdivがあります。それぞれの入力/改行で、クラス ".chords"と属性contenteditable = "false"で新しいdivを作成したいと思います。画像は、ここで示したように、この「.chords」のdivは、右の新しい行の前に配置する必要があります。
赤色は#textarea divで、青色.chordsのdivタグである
だから私の質問は:私はこれをどうやって行うのですか? 私はこの記事の最後に試したコードを投稿しましたが、実行するとわかるように.chords divは新しい行の下に配置されているので、今はちょっと立ち往生しています..もしあればあなたの人の中には、これを行う方法のアイデアがあります。私にあなたから聞かせてください!
$(function(e) {
$('#textarea').keydown(function(e) {
var i = 0;
// Check if the returnkey is being pressed
if (e.keyCode === 13) {
$("#textarea div:last-of-type").after("<div class=\"chords\" id=\"" + (i + 1) + "\" contenteditable=\"false\"></div>");
i = i + 1;
}
});
})
#textarea {
border: 1px solid black;
line-height: 50px;
font-size: 20px;
}
.chords {
height: 30px;
border: 1px solid black;
position: relative;
}
#textarea div:not(.chords) {
margin-top: 20px;
min-height: 40px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="textarea" contenteditable="true">
<div class="chords" id="1" contenteditable="false"></div>
<div></div>
<!--End of #textarea-->
</div>
を、それをチェックアウト異なる。私はあなたが別の方法を見つける必要があると思う。 – Maruf
ええ、あなたは正しいかもしれません。私は教育 "webintegrator"で勉強しているので、まだ専門家ではありません。 – user3276657
私は別の方法をお手伝いします – Maruf