Рекомендует «запретить пользователю выбирать определенный цвет», но вы можете просто включить проверку в событие change
:
document.getElementById('myColorInput').addEventListener('change', function(e){
if (e.target.value != '#ff0000') {
/* apply it */
} else {
/* do not allow it ad warn the user or something */
}
});
Действие выбора самого цвета я не делаюдумаю, что это возможно, по умолчанию.Но использование этого значения в дальнейшем - все в ваших руках.
Вы можете обойти это, сохраняя значение при каждом изменении, и, если проверка не пройдена, вернуться к исходному сохраненному значению (это позволит вернуться кпоследнее «действительное» значение вместо только значения по умолчанию, что является хорошим небольшим улучшением UX):
document.getElementById('myColorInput').addEventListener('change', function(e){
var target = e.target;
var value = target.value;
var prevStoredValue = target.getAttribute('data-storedValue');
if (value != '#ff0000') {
target.setAttribute('data-storedValue', value);
/* use it further on */
} else {
if (prevStoredValue) {
target.value = prevStoredValue;
} else {
target.setAttribute('data-storedValue', '#FFFFFF'); // or any default value
};
/* do not allow it and warn the user or something */
}
});