Last active
July 2, 2019 16:55
-
-
Save eto4detak/17d9a0377a4a6fcdd125fd069df2c38d to your computer and use it in GitHub Desktop.
js script
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| '<a href="javascript:void(0)">Войти</a>'; | |
| window.location.href = 'uploads/file.doc'; | |
| str.search( /лю/i ); | |
| window.open('http://ya.ru'); | |
| document.body.style.background = 'red'; | |
| location.href = location.pathname + '/?wt_city_by_default=' + geoData.city; | |
| event.preventDefault(); | |
| $('html, body').animate( { scrollTop: 0 }, 'medium'); | |
| alert( null >= 0 ); // true, т.к. null преобразуется к 0 | |
| alert( null > 0 ); // false (не больше), т.к. null преобразуется к 0 | |
| alert( null == 0 ); // false (и не равен!), т.к. == рассматривает null особо. | |
| alert( undefined > 0 ); // false, т.к. undefined -> NaN | |
| alert( undefined == 0 ); // false, т.к. это undefined (без преобразования) | |
| alert( undefined < 0 ); // false, т.к. undefined -> NaN | |
| if (~str.indexOf("get")) { | |
| alert( 'совпадение есть!' ); | |
| } | |
| !isNaN(parseFloat(obj)) // string = true | |
| //удалить элемент | |
| Array.prototype.remove = function(value) { | |
| var idx = this.indexOf(value); | |
| if (idx != -1) { | |
| // Второй параметр - число элементов, которые необходимо удалить | |
| return this.splice(idx, 1); | |
| } | |
| return false; | |
| } | |
| console.dir(elem);//выводит элемент в виде JavaScript-объекта | |
| /*======================================================== | |
| * html | |
| ========================================================*/ | |
| //добавить функцию ко всем html элементам | |
| Element.prototype.sayHi = function() { | |
| alert( "Привет от " + this ); | |
| } | |
| document.body.sayHi() | |
| //добавить свойство ко всем html элементам | |
| Object.defineProperty(Element.prototype, 'lowerTag', { | |
| get: function() { | |
| return this.tagName.toLowerCase(); | |
| } | |
| }); | |
| alert( document.body.lowerTag ); // body | |
| elem.classList.toggle("class");// – если класса class нет, добавляет его, если есть – удаляет. | |
| //--------------html создать добавить ------------------ | |
| var newLi = document.createElement('li'); | |
| newLi.innerHTML = 'Привет, мир!'; | |
| newLi.className = "alert alert-success"; | |
| list.appendChild(newLi);//добавить как последний элемент | |
| document.body.insertBefore(div, document.body.firstChild);//добавить как первый элемент | |
| // создать глубокую копию узла | |
| var div2 = div.cloneNode(true); | |
| li5.insertAdjacentHTML("beforeBegin", "<li>3</li><li>4</li>");//вставить элементы до выбранного элемента | |
| var p = document.createElement('p'); document.body.append(p); //вставить что угодно в элемент | |
| //--------------html поиск -------------------------- | |
| // ближайший элемент сверху, подходящий под селектор span | |
| // это сам numberSpan, так как поиск включает в себя сам элемент | |
| alert(numberSpan.closest('span') === numberSpan) // true | |
| //------------события ---------------------------- | |
| var elems = document.querySelectorAll('form,div,p'); // на каждый элемент повесить обработчик на стадии перехвата | |
| for (var i = 0; i < elems.length; i++) { | |
| elems[i].addEventListener("click", highlightThis, true); | |
| } | |
| document.onclick = function(event) { //поведение - повесить обработчик на любой элемент при помощи атрибута | |
| var target = event.target; | |
| var id = target.getAttribute('data-toggle-id'); | |
| if (!id) return; | |
| var elem = document.getElementById(id); | |
| elem.hidden = !elem.hidden; | |
| }; | |
| var tree = document.getElementsByTagName('ul')[0]; //из списка в treeview | |
| var treeLis = tree.getElementsByTagName('li'); | |
| /* wrap all textNodes into spans */ | |
| for (var i = 0; i < treeLis.length; i++) { | |
| var li = treeLis[i]; | |
| var span = document.createElement('span'); | |
| li.insertBefore(span, li.firstChild); | |
| span.appendChild(span.nextSibling); | |
| } | |
| /* catch clicks on whole tree */ | |
| tree.onclick = function(event) { | |
| var target = event.target; | |
| if (target.tagName != 'SPAN') { | |
| return; | |
| } | |
| /* now we know the SPAN is clicked */ | |
| var childrenContainer = target.parentNode.getElementsByTagName('ul')[0]; | |
| if (!childrenContainer) return; // no children | |
| childrenContainer.hidden = !childrenContainer.hidden; | |
| } | |
| elem.addEventListener("hello", function(event) { //генерация событий на элементе | |
| alert( event.detail.name ); | |
| }, false); | |
| var event = new CustomEvent("hello", { | |
| detail: { name: "Вася" } | |
| }); | |
| elem.dispatchEvent(event); | |
| //-----------------form ------------------------ | |
| <form name="my"> //работа с формами | |
| <input name="one" value="1"> | |
| <input name="two" value="2"> | |
| <select name="genre" multiple> | |
| <option value="blues" selected>Мягкий блюз</option> | |
| <option value="rock" selected>Жёсткий рок</option> | |
| <option value="classic">Классика</option> | |
| </select> | |
| </form> | |
| <script> | |
| var form = document.forms.my; // можно document.forms[0] | |
| var elem = form.elements.one; // можно form.elements[0] | |
| var select = form.elements.genre; | |
| alert( elem.value ); // 1 | |
| </script> | |
| <input id="input" type="text"> //работа с вводам текста | |
| <script> | |
| input.onblur = function() { | |
| if (isNaN(this.value)) { // введено не число | |
| // показать ошибку | |
| this.classList.add("error"); | |
| //... и вернуть фокус обратно | |
| input.focus(); | |
| } else { | |
| this.classList.remove("error"); | |
| } | |
| }; | |
| input.oninput = function() { //событие на изменение | |
| document.getElementById('result').innerHTML = input.value; | |
| }; | |
| </script> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment