Untitled
unknown
html
3 years ago
5.4 kB
17
Indexable
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/css/bootstrap.min.css" integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous"> <!-- задача 1: да се създаде скрипт, при който чрез натискане на десен бутон на мишката върху някой параграф, той получава цвят за фон, определен от полето data-color --> <!-- задача 2: да се създаде скрипт, при който чрез натискане на клавиш W се увеличава размера на изображението по широчина с по 10px, а при натискане на клавиш H се увеличава височината на изображението с по 15px --> <!-- задача 3: да се създаде скрипт, при който чрез въвеждане на текст в едноредово поле се отчита натискането на клавиш и се търси съвпадение в списък от елементи. При открито съответствие се оцветява само частта от въведеното. --> <script> document.addEventListener("DOMContentLoaded", () => { clean(document.body); const task1 = () => { let paragraphs = document.querySelectorAll('p'); paragraphs.forEach(item => { item.addEventListener('contextmenu', (e) => { e.preventDefault(); e.target.style.background = e.target.dataset.color; }); }); } task1(); const task2 = () => { let img = document.querySelector('img'); document.addEventListener('keydown', (e) => { let arr = img.src.split('co/')[1].split('x'); let w = parseInt(arr[0]); let h = parseInt(arr[1]); if(e.code == 'KeyW'){ w += 10; } if(e.code == 'KeyH'){ h +=15; } img.src = 'https://placehold.co/'+w+'x'+h; }); } task2(); const task3 = () => { let input = document.querySelector('input'); input.addEventListener('input', (e) => { let items = document.querySelectorAll('.list-group-item'); items.forEach(li => { li.innerText = li.innerText; if(li.innerText.match(e.target.value) && e.target.value != ''){ let arr = li.innerText.split(e.target.value); let clean = '<span style="background:red">'+ e.target.value + '</span>'; li.innerHTML = arr[0] + clean + arr[1]; } }); }); } task3(); }); const clean = (node) => { for(var n = 0; n < node.childNodes.length; n ++) { var child = node.childNodes[n]; if ( child.nodeType === 8 || (child.nodeType === 3 && !/\S/.test(child.nodeValue)) ) { node.removeChild(child); n --; } else if(child.nodeType === 1) { clean(child); } } } </script> </head> <body> <!-- задача 1 --> <div class="container my-4"> <p data-color="red">lorem item 1</p> <p data-color="orange">lorem item 2</p> <p data-color="#1920A0">lorem item 3</p> <p data-color="#F97762">lorem item 4</p> <p data-color="#131399">lorem item 5</p> <p data-color="#559992">lorem item 6</p> <p data-color="#1116AA">lorem item 7</p> <p data-color="#330000">lorem item 8</p> <p data-color="green">lorem item 9</p> <p data-color="blue">lorem item 10</p> </div> <!-- задача 1 --> <!-- задача 2 --> <div class="container my-4"> <img src="http://placehold.co/250x250" alt=""> </div> <!-- задача 2 --> <!-- задача 3 --> <div class="container my-4"> <input type="text" class="form-control"> <ul class="list-group"> <li class="list-group-item"> Lorem ipsum</li> <li class="list-group-item"> dolor sit</li> <li class="list-group-item"> amet consectetur</li> <li class="list-group-item"> adipisicing elit</li> <li class="list-group-item"> Facere nemo</li> <li class="list-group-item"> possimus in totam</li> <li class="list-group-item"> eos harum rem</li> <li class="list-group-item"> aliquam, eum recusandae quod</li> <li class="list-group-item"> odit! Necessitatibus quibusdam</li> <li class="list-group-item"> illum voluptatem nihil</li> </ul> </div> <!-- задача 3 --> </body> </html>
Editor is loading...