diff --git a/js-core/homeworks/homework-17/homework-17.0/index.html b/js-core/homeworks/homework-17/homework-17.0/index.html new file mode 100644 index 0000000..6e418d2 --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.0/index.html @@ -0,0 +1,11 @@ + + + + + Home work 1 + + + + + + \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.0/src/main.js b/js-core/homeworks/homework-17/homework-17.0/src/main.js new file mode 100644 index 0000000..dbe5b7f --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.0/src/main.js @@ -0,0 +1,39 @@ +/* + TASK 0 + Отобразите всех лидеров массива. + * + * + * Элемент лидер если он больше чем все последующие элементы + * после него ( элементы справа ). + * Последний элемент всегда лидер. Например в массиве [16,17,4,3,5,2] + * лидеры 17, 5 и 2. + * + * */ + +const solution = arr => { + let mass = arr.filter((value, i, arr) => { + if (i + 1 == arr.length) { + return value; + } + let a = arr.slice(i + 1) + //console.log(`a = `, a); + + function compareNumeric(a, b) { + if (a > b) return -1; + if (a < b) return 1; + } + a.sort(compareNumeric); + if (value > a[0]) { + return value; + } + + }); + return mass; + +}; + +console.log(solution([16, 17, 4, 3, 5, 2])); // === [17, 5, 2] +console.log(solution([4, 3, 7, 12, 6, 67, 5, 45, 34, 35, 2, 8])); // [67, 45, 35, 8] +console.log(solution([12, 10, 12, 8, 7, 6])); // [12, 8, 7, 6] +console.log(solution([1, 2, 3, 4, 5, 4])); // [5, 4] +console.log(solution([12, 12, 12])); // [5, 4] \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.1/img/download1.jpg b/js-core/homeworks/homework-17/homework-17.1/img/download1.jpg new file mode 100644 index 0000000..2423c0a Binary files /dev/null and b/js-core/homeworks/homework-17/homework-17.1/img/download1.jpg differ diff --git a/js-core/homeworks/homework-17/homework-17.1/img/download2.jpg b/js-core/homeworks/homework-17/homework-17.1/img/download2.jpg new file mode 100644 index 0000000..b1470b2 Binary files /dev/null and b/js-core/homeworks/homework-17/homework-17.1/img/download2.jpg differ diff --git a/js-core/homeworks/homework-17/homework-17.1/img/download3.jpg b/js-core/homeworks/homework-17/homework-17.1/img/download3.jpg new file mode 100644 index 0000000..f3bc31a Binary files /dev/null and b/js-core/homeworks/homework-17/homework-17.1/img/download3.jpg differ diff --git a/js-core/homeworks/homework-17/homework-17.1/img/download4.jpg b/js-core/homeworks/homework-17/homework-17.1/img/download4.jpg new file mode 100644 index 0000000..0d4f33c Binary files /dev/null and b/js-core/homeworks/homework-17/homework-17.1/img/download4.jpg differ diff --git a/js-core/homeworks/homework-17/homework-17.1/img/download5.jpg b/js-core/homeworks/homework-17/homework-17.1/img/download5.jpg new file mode 100644 index 0000000..020ed65 Binary files /dev/null and b/js-core/homeworks/homework-17/homework-17.1/img/download5.jpg differ diff --git a/js-core/homeworks/homework-17/homework-17.1/index.html b/js-core/homeworks/homework-17/homework-17.1/index.html new file mode 100644 index 0000000..293c580 --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.1/index.html @@ -0,0 +1,26 @@ + + + + + + Home work карусель + + + + +
+ + +
+ + 1 + +
+
+ + + + + \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.1/src/main.js b/js-core/homeworks/homework-17/homework-17.1/src/main.js new file mode 100644 index 0000000..1b91a84 --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.1/src/main.js @@ -0,0 +1,11 @@ +var arr = ['img/download1.jpg', 'img/download2.jpg', 'img/download3.jpg', 'img/download4.jpg', 'img/download5.jpg'] +left = document.getElementById('left'); +right = document.getElementById('right'); +var carousel = new Carousel(arr); +left.onclick = function() { + carousel.left1(); +} +right.onclick = function() { + carousel.right1(); +} +carousel.set(2000) \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.1/src/main1.js b/js-core/homeworks/homework-17/homework-17.1/src/main1.js new file mode 100644 index 0000000..3555687 --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.1/src/main1.js @@ -0,0 +1,78 @@ +// class Carousel { +// constructor() { +// this.img = document.getElementById('img'); +// this.left = document.getElementById('left'); +// this.right = document.getElementById('right'); +// this.num = document.getElementById('num'); +// } +// left1() { +// var e = this.img.src.match(/download[1-5]/)[0]; +// var i = e[e.length - 1]; +// i--; +// if (i == 0) { i = 5 }; +// this.img.src = this.img.src.replace(/download[1-5]/, `download${i}`); +// this.num.textContent = i; +// } +// right1() { +// var e = this.img.src.match(/download[1-5]/)[0]; +// var i = e[e.length - 1]; +// i++; +// if (i == 6) { i = 1 }; +// this.img.src = this.img.src.replace(/download[1-5]/, `download${i}`); +// this.num.textContent = i; +// } +// setInt() { +// function fun() { +// var e = this.img.src.match(/download[1-5]/)[0]; +// var i = e[e.length - 1]; +// i++; +// if (i == 6) { i = 1 }; +// this.img.src = this.img.src.replace(/download[1-5]/, `download${i}`); +// this.num.textContent = i; +// } +// setInterval(fun, 2000) +// } +// } +// var carousel = new Carousel(); +// left.onclick = function() { +// carousel.left1(); +// } +// right.onclick = function() { +// carousel.right1(); +// } +// carousel.setInt(); +function include(url) { + var script = document.createElement('script'); + script.src = url; + document.getElementsByTagName('head')[0].appendChild(script); +} +class Carousel { + constructor(arr) { + this.img = document.getElementById('img'); + this.num = document.getElementById('num'); + this.i = 0; + this.img.src = arr[0]; + } + left1() { + this.i--; + if (this.i < 0) { this.i = 4 } + this.img.src = arr[this.i]; + this.num.textContent = this.i + 1; + } + right1() { + this.i++; + if (this.i > 4) { this.i = 0 } + this.img.src = arr[this.i]; + this.num.textContent = this.i + 1; + console.log(this.i) + } + set(time) { + let f = () => { + this.i++; + if (this.i > 4) { this.i = 0 } + this.img.src = arr[this.i]; + this.num.textContent = this.i + 1; + } + setInterval(f, time); + } +} \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.2/index.html b/js-core/homeworks/homework-17/homework-17.2/index.html new file mode 100644 index 0000000..7703ce6 --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.2/index.html @@ -0,0 +1,24 @@ + + + + + + Home work 1 + + + + +

tttttttttttttt

+ eeeeeee + + + + \ No newline at end of file diff --git a/js-core/homeworks/homework-17/homework-17.2/src/main.js b/js-core/homeworks/homework-17/homework-17.2/src/main.js new file mode 100644 index 0000000..6e3b19d --- /dev/null +++ b/js-core/homeworks/homework-17/homework-17.2/src/main.js @@ -0,0 +1,21 @@ +var t = document.styleSheets; +//console.log(t[0].rules) +class Set { + constructor() { + + } + topStyle(class1, atribut) { + var style = document.getElementsByTagName('style')[0]; + let atribut1 = '' + for (let key in atribut) { + console.log(`${key}:${atribut[key]}`); + atribut1 += `${key}:${atribut[key]}` + } + var c = ' .' + class1 + ' {' + atribut1 + '};'; + style.innerHTML += c; + //head.appendChild(style); + } +} +var s = new Set(); +//s.topStyle('fetch', { border: '4px double black;' }); +s.topStyle('top', { backgroundColor: 'blue' }); \ No newline at end of file