JSFiddle - React, Tailwind, and code Playground
HTML
<div contenteditable="true">
какойто текст
какойто текст
<img class="this-img" src="img.jpg" />
какойто текст
</div>
<button>На строку выше</button>
CSS
div {
white-space: pre;
}
JavaScript
$('button').on('click', function() {
var $div = $('div');
var divContent = $div.html();
var divSplit = divContent.split('\n');
console.log(divSplit)
var imgIndex;
divSplit.some(function(divRow, index) {
if (/<img/.test(divRow)) {
imgIndex = index;
return true;
}
});
if (imgIndex > 0) {
var tmp = divSplit[imgIndex];
divSplit[imgIndex] = divSplit[imgIndex - 1];
divSplit[imgIndex - 1] = tmp;
$div.html(divSplit.join('\n'));
}
})