let dotContainer = document.querySelector('.slide_dots');
let dotList = [... this.slides].map(slide => {
const dot = document.createElement('div');
dot.classList.add('dot');
dotContainer.appendChild(dot);
return dot;
});
console.log( dotList ); // [ <div></div>, <div></div>, <div></div>, ... ]
function require(url,cb){
let script = document.createElement('script');
script.setAttribute('type','application/javascript');
script.setAttribute('src',url);
if('function' == typeof cb)
script.addEventListener('load', cb, false);
document.head.appendChild(script);
return script;
}
function isHidden(element){
const elementRect = element.getBoundingClientRect();
const elementHidesUp = elementRect.top < 0;
const elementHidesLeft = elementRect.left < 0;
const elementHidesDown = elementRect.bottom > window.innerHeight;
const elementHidesRight = elementRect.right > window.innerWidth;
const elementHides = elementHidesUp || elementHidesLeft || elementHidesDown || elementHidesRight;
return elementHides;
}
function countHidden(element){
const elementRect = element.getBoundingClientRect();
const elementHides = {
up: Math.max(0,0 - elementRect.top),
left: Math.max(0,0 - elementRect.left),
down: Math.max(0,elementRect.bottom - window.innerHeight),
right: Math.max(0,elementRect.right - window.innerWidth)
};
return elementHides;
}
window.addEventListener('DOMContentLoaded', function domLoadedHandler(e){
/* твой js */
}, false);
document.querySelector('form').addEventListener('submit', e=>{
e.preventDefault();
e.stopPropagation();
})
$('#auth-form').on('submit',e=>{
/** После этих двух строк форма не будет перезаггружаться **/
e.preventDefault();
e.stopPropagation();
/*** ваше действие тут ***/
});
let x;
function abc(num){
return () => {
return num**2;
}
}
x = abc(4);
console.log(x()); // 16
(async ()=>{
let x = await promisify($.getJSON)('./json.json');
console.log( x ) // ...твоя data...
})();
// A simplified implementation of `util.promisify()`. Doesn't
// cover all cases, don't use this in prod!
function promisify(fn) {
return function() {
const args = Array.prototype.slice.call(arguments);
return new Promise((resolve, reject) => {
fn.apply(this, [].concat(args).concat([(err, res) => {
if (err != null) {
return reject(err);
}
resolve(res);
}]));
});
};
}
// Шаг 1: Создаём запрос серверу
let response = await fetch('https://api.github.com/repos/javascript-tutorial/en.javascript.info/commits?per_page=100');
const reader = response.body.getReader();
// Шаг 2: получаем размер контента/файла
const contentLength = +response.headers.get('Content-Length');
// Шаг 3: читаем данные
let receivedLength = 0; // данных получено (байт)
let chunks = []; // массив кусочков файла
while(true) {
const {done, value} = await reader.read();
if (done) {
break;
}
chunks.push(value);
receivedLength += value.length;
console.log(`Получено ${receivedLength} байт из ${contentLength} байт`)
}
// Шаг 4: соединяем кусочки в единный Uint8Array
let chunksAll = new Uint8Array(receivedLength); // (4.1)
let position = 0;
for(let chunk of chunks) {
chunksAll.set(chunk, position); // (4.2)
position += chunk.length;
}
// Шаг 5: декодируем в нужный формат
let result = new TextDecoder("utf-8").decode(chunksAll);
// Готово!
let commits = JSON.parse(result);
alert(commits[0].author.login);