let state = true;
document.querySelector('button').addEventListener('click', e => {
state = !state;
document.querySelectorAll('circle').forEach((n, i, a) => {
setTimeout(() => {
n.classList.toggle('st0', state);
e.target.disabled = (state ? a.length - i : i + 1) !== a.length;
}, (state ? a.length - i : i) * 3);
});
});
let state = true;
const button = document.querySelector('button');
const circles = document.querySelectorAll('circle');
button.addEventListener('click', () => {
state = !state;
toggleCircle(0);
});
function toggleCircle(i) {
if (i < circles.length) {
setTimeout(() => {
const index = state ? circles.length - i - 1 : i;
circles[index].classList.toggle('st0', state);
button.disabled = i !== circles.length - 1;
toggleCircle(i + 1);
}, 3);
}
}
let state = true;
const circles = document.querySelectorAll('circle');
document.querySelector('button').addEventListener('click', function() {
this.disabled = true;
state = !state;
let i = 0;
const intervalID = setInterval(() => {
const index = state ? circles.length - i - 1 : i;
circles[index].classList.toggle('st0', state);
if (++i === circles.length) {
this.disabled = false;
clearInterval(intervalID);
}
}, 3);
});
файлы записываются все сразу на первой же итерации
const writeFile = (name, data) => new Promise((resolve, reject) => {
fs.writeFile(name, data, function(err) {
if (err) {
reject(err);
} else {
resolve();
}
});
});
const writeFile = require('util').promisify(fs.writeFile);
for (let i = 0; i < iterations; i++) {
await writeFile(`data${i}.txt`, JSON.stringify(obj[i], null, 2));
}
moment.utc(moment.duration(endTime) - moment.duration(startTime)).format('HH:mm')
.item
margin-left: -450px
@for $i from 1 through 6
&:nth-child(#{$i})
left: $i * 150% - 100%
если я пишу что то одно, то ошибка
- blocks.left()
-
if (blocks.left) {
blocks.left()
}
- blocks.left && blocks.left()
. var delayAnim = 4; <...> 'animation-delay': '.' + delayAnim + 's'
'animation-delay': (delayAnim + 0.2 * index) + 's'
удаляются последовательно только теги tr <...> вложенные теги td остаются
table.appendChild(tr); <...> table.appendChild(tdLeft); // "Название" table.appendChild(tdRight); //"Описание" table.appendChild(tdDelete); //"Навигация"
filters: {
shorten: (val, words = 2) => val.split(' ').slice(0, words).join(' '),
},
<div>{{ text | shorten }}</div>
<div>{{ text | shorten(5) }}</div>
watch: {
'$route.query.page'() {
this.loadCustomers();
},
},
watch: {
'$route.query.page': {
immediate: true,
handler: 'loadCustomers',
},
},
нужного функционала нет <...> Сталкивался может кто с подобным и нарыл хорошую обертку для API?
сделатьКрасиво
, и вам самому не надо работать ни головой, ни руками? Нет, такого нет и не будет.if (coord.every((n, i) => n === coordinates[i])) {
placemark.balloon.open();
}
const placemarks = elem.find('.map-balloonContent').get().map(n => createPlacemark({
coord: $(n).data('coord'),
content: $(n).html(),
}));
placemarks.forEach(n => myMap.geoObjects.add(n));
placemarks[0].balloon.open();
elem.on('clickAddress', function(e, coord) {
placemarks.find(n => n.geometry.getCoordinates().every((m, i) => m === coord[i])).balloon.open();
});