JavaScript Range () - Как удалить текст формы формата, выбранный как ckeditor - PullRequest
0 голосов
/ 31 марта 2020

когда я выбираю текст, затем нажимаю кнопку «Добавить формат», цвет текста будет меняться на красный

теперь мне нужно удалить формат из текста, выбранного как ckeditor

format = [текст полужирный или размер шрифта, цвет] мне нужно удалить эффект из текста

вы можете попробовать его здесь https://ckeditor.com/ckeditor-4/demo/#document

var add_format = document.getElementById("add_format"),
    remove_format = document.getElementById("remove_format"),
    textContent = document.getElementById("textContent");

// Set Effect
function add_format_function() {
    var range = window.getSelection().getRangeAt(0);
    var selectionContents = range.extractContents();
    var span = document.createElement("span");
    span.appendChild(selectionContents);
    // span.setAttribute("class","color");
    span.style.color = "red";

    range.insertNode(span);
}

// Remove Effect
function remove_format_function() {

    // i need function to remove formata

}

add_format.onclick = function () {
    add_format_function();
}
remove_format.onclick = function () {
    remove_format_function();
}
* {
    padding: 0;
    margin: 0;
    border: none;
    box-sizing: border-box;
    outline-color: rgb(16, 126, 74);
}
body {
    font-family: Arial, Helvetica, sans-serif;
    background-color: #181a23;
}
.container {
    position: relative;
    width: 400px;
    height: 400px;
    border-radius: 5px;
    display: flex;
    flex-direction: column;
    align-items: center;
    background-color: #3333;
    margin: 40px auto;
    padding: 10px;
    box-shadow: 0 0 10px #111;
}
header {
    width: 100%;
    height: 50px;
    background-color: #15161f;
    border-radius: 2px;
    display: flex;
    align-items: center;
    padding: 0 10px;
}
button{
    padding: 8px 10px;
    background: #107e4a;
    color: #ffffff;
    border-radius: 2px;
    cursor: pointer;
    margin: 0 10px;
}
button:hover {
    background-color: #10407e;
}
#textContent {
    background-color: #15161f;
    color: #ffffff;
    padding: 10px;
    margin-top: 10px;
    width: 100%;
    height: 100%;
    border-radius: 2px;
}
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <link rel="stylesheet" href="style.css">
</head>

<body>
    <div class="container">
        <header>
            <button id="add_format">Add Effect</button>
            <button id="remove_format">Remove Effect</button>
        </header>
        <div id="textContent" contenteditable="true">
            iiiiixxxiiiii
        </div>
    </div>

    <script src="main.js"></script>
</body>

</html>
...