Как загружать в html строки с последующей работой?
Вложений: 1
1. Есть список заголовков.
2. Его нужно вставить в поле "Вставьте список заголовков" и загрузить их на страницу (вывести). 3. Далее на странице выбирая из списка заголовки (кликать по нему) и он добавляется в поле "Структура идеальной статьи". 4. После сбора структуры, должна быть возможность ее скопировать. Сделал такую штуку https://codepen.io/sergiocharm/pen/MWPWMLO <div class="content"> <style> .content1{width:48%;margin:10px;float:left} .content1 textarea{background:#fff} .offer{padding:3px 10px;cursor:pointer} .offer:hover{background:#ddd;} </style> <div class=""> <h3>Вставьте список заголовков (каждый заголовок с новой строки):</h3> </div> <textarea id="id_textarea" rows="5" cols="85"></textarea> <br /> <button>Добавить весь список во "Все заголовки"</button> </div> <div class="content1"> <h3>Все заголовки (кликни по заголовку, он добавится в поле справа) </h3> <div class="offer">Привет мир</div> <div class="offer">Проверка связи</div> <div class="offer">Чистка свитера</div> <div class="offer">Ну что, получилось?</div> </div> <div class="content1"> <textarea id="id_textarea" rows="5" cols="85"></textarea> <br /> <button>Копировать весь список с переносами</button> </div> </div> // Получить все элементы предложения const offer = document.querySelectorAll('.offer'); // Получить элемент textarea const textarea = document.querySelector('textarea'); // Добавляем прослушиватель кликов к каждому элементу предложения offer.forEach((offer) => { offer.addEventListener('click', (event) => { // Добавляем содержимое предложения в текстовое поле textarea.value += event.target.textContent + '\n'; }); }); |
вставка и копирование текста
sergiocharm,
<!DOCTYPE HTML> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> #id_textarea { background-color: #fff } .offer { padding: 3px 10px; cursor: pointer } .offer:hover { background-color: #ddd; } </style> <script> document.addEventListener("DOMContentLoaded", () => { const headlines = ["Добавить весь список", "Привет мир", "Проверка связи", "Чистка свитера", "Ну что, получилось?"]; const textarea = document.querySelector("#id_textarea"); const control = document.querySelector(".content"); const button = document.createElement("div"); button.className = "offer"; const buttons = headlines.map((txt, i) => { let clone = button.cloneNode(true); let up = i ? txt : headlines.slice(1).join("\n"); clone.textContent = txt; clone.addEventListener('click', () => { console.log(i) textarea.value += `${up}\n`; }); return clone; }) control.append(...buttons); document.querySelector(".btn").addEventListener("click", () => { navigator.clipboard.writeText(textarea.value) alert(`Скопировано:\n${textarea.value}`); }) }) </script> </head> <body> <div> <h3>Заголовки</h3> <textarea id="id_textarea" rows="5" cols="85"></textarea> <br /> <div class="content"> <h3>Все заголовки (кликни по заголовку, он добавится в поле справа) </h3> </div> <br /> <button type="button" class="btn">Копировать весь список с переносами</button> </div> </body> </html> |
Спасибо! Но немного не то.
Допустим у меня есть большой список Заголовок 1 Заголовок 2 Заголовок 3 ... Заголовок 50 Его нужно вставить в textarea и весь список вывести во Все заголовки Далее, при нажатии на заголовок из списка заголовок должен переноситься в textarea2 то есть готовый вариант Я здесь добавление в textarea2 добавлять научился, но как список пополнить новыми заголовками я хз https://codepen.io/sergiocharm/pen/MWPWMLO |
Вот на видео инстурмент который хочу сделать
https://youtu.be/sQr_kIcGLZA?t=365 слева подается полная структура статьи, и из нее уже выбираем что будет в нашей структуре, кликаем и заголовок попадает в правый блок |
sergiocharm,
не осилил. |
Часовой пояс GMT +3, время: 12:34. |