$('.menu-item > .submenu').toggleClass('show-submenu');
$(this).find('.submenu').toggleClass('show-submenu');
callback
'е observer
'а можно добавлять созданные элементы в уникальную коллекцию - Set
и обрабатывать так, как Вам необходимо. // word: загаданное число
var word = pickWord();
// answerArray: итоговый массив
var answerArray = setupAnswerArray();
setupAnswerArray
с параметром word
: var answerArray = setupAnswerArray(word);
. После исправления код работает. SVG
. SVG
-картинку можно перегнать как-то так:function saveImage(url, name) {
const image = new Image();
image.addEventListener('load', () => {
const link = document.createElement('a');
const canvas = document.createElement('canvas');
const context = canvas.getContext('2d');
[canvas.width, canvas.height] = [image.width, image.height];
context.drawImage(image, 0, 0);
link.setAttribute('href', canvas.toDataURL());
link.setAttribute('download', name);
link.click();
});
image.src = url;
}
const arr = [
{
name: 'test1',
koef: 1,
id: 1,
age: 23
},
{
name: 'test2',
koef: 1,
id: 2,
age: 23
},
{
name: 'test3',
koef: 2,
id: 3,
age: 23
},
{
name: 'test4',
koef: 2,
id: 4,
age: 23
},
{
name: 'test5',
koef: 3,
id: 5,
age: 23
},
{
name: 'test6',
koef: 3,
id: 6,
age: 23
},
];
const createMap = (array, key) => new Map(array.map(entry => [entry[key], entry]));
const map = createMap(arr, 'name');
console.log(map);
/*
Map(6) {
'test1' => { name: 'test1', koef: 1, id: 1, age: 23 },
'test2' => { name: 'test2', koef: 1, id: 2, age: 23 },
'test3' => { name: 'test3', koef: 2, id: 3, age: 23 },
'test4' => { name: 'test4', koef: 2, id: 4, age: 23 },
'test5' => { name: 'test5', koef: 3, id: 5, age: 23 },
'test6' => { name: 'test6', koef: 3, id: 6, age: 23 }
}
*/
map.get('test6').koef = map.get('test1').koef;
console.log(map);
/*
Map(6) {
'test1' => { name: 'test1', koef: 1, id: 1, age: 23 },
'test2' => { name: 'test2', koef: 1, id: 2, age: 23 },
'test3' => { name: 'test3', koef: 2, id: 3, age: 23 },
'test4' => { name: 'test4', koef: 2, id: 4, age: 23 },
'test5' => { name: 'test5', koef: 3, id: 5, age: 23 },
'test6' => { name: 'test6', koef: 1, id: 6, age: 23 }
}
*/
function convertRGBAtoHEX(channels) {
const hexChannels = channels.map(entry => (`0${entry.toString(16)}`).slice(-2));
return (`#${hexChannels.join('')}`);
}
function parseRGBA(raw) {
const channels = raw
.replace(/rgba|rgb|\(|\)/g, '')
.split(/,\s*/g)
.map((entry, index) => {
const number = parseFloat(entry, 10);
return (index === 3) ? Math.floor(number * 255) : number;
});
return channels;
}
console.log(convertRGBAtoHEX(parseRGBA('rgba(255, 0, 100, .7)'))); // #ff0064b2
console.log(convertRGBAtoHEX([255, 0, 100, 178])); // #ff0064b2
console.log(convertRGBAtoHEX([255, 0, 100])); // #ff0064
window.addEventListener('resize', function () { // Можно принимать объект события
// Если width глобальная переменная
width = screen.width;
});