Каков правильный способ стилизации элемента canvas HTML через функцию, которая принимает любое правило и значение стиля в качестве параметров? Да, я знаю, что прямой подход Javascript будет работать. Функция setCSS() представляет собой тестовый стенд для функции setCSS() версии 2, которая предназначена для установки нескольких стилей CSS, используя массив объектов (ключ, значения) в качестве параметров, так что каждый объект представляет собой одно свойство CSS. Вот что у меня есть, что не работает:
function init() {
'use strict';
let can = document.getElementById('canvas');
let ctx = canvas.getContext('2d');
resizeBlock(can, 50, 50);
// Tried both forms individually by commenting out other function
setCSS(can, 'borderWidth', '20px');// not working
setCSS(can, 'borderWidth', '20');// not working
}
function setCSS(element, rule, value) {
element.style.rule = value;
return element; // should element return or not?
}
init
- это функция, init()
является результатом вызова функции.
Так что это сработает:
window.onload = init;
Также вы можете поместить его после определения функции init()
.
function init() { ...snip... }
window.onload = init;
window.onload = init;
без скобок.window.onload = init();
то же самое, что иwindow.onload = undefined
потому что выполнениеinit
даетundefined
(ничего не возвращает). Вместо этого вам не следует выполнять функцию, просто передайте ссылку на нее, чтобы она могла быть вызвана при загрузке окна.