Нубский начинающий инженер по интерфейсу здесь. В настоящее время я работаю над приложением для векторного рисования на холсте html5, которое упрощает замену цветовой палитры. Я работаю над функцией, которая создает именованную цветовую переменную/объект (например, «основной» или «вторичный») и сохраняет ее в своем собственном массиве для безопасного хранения, НО ТАКЖЕ добавляет ее к переключателю выбора цвета/палитры для меню каждой векторной формы, которая была создана.
Идея состоит в том, что вы рисуете фигуру, выбираете «основной» (или любые другие цветовые переменные, которые вы ранее создали) в этом меню фигур, и этот цвет фигуры устанавливается на любой основной цвет, который можно легко изменить в отдельном меню для « основная цветовая переменная.
Я использую html select, и когда создается новый цвет, мне нужно обновить меню для векторных фигур (информация хранится в li), которые были созданы. Я перебираю их в конструкторе переменных цвета, используя это:
var colorVar = function(name, hexstring){
this.name = name;
this.color = hexstring;
//append colors to drop downs
$( "li" ).each(function( index ) {
$(this).context.childNodes[4].append("<option value='blue'>" + this.name + "</option>");
});
}
но когда я запускаю этот код ^^, я получаю эту ошибку: Uncaught TypeError: $(...).context.childNodes[4].append не является функцией
когда я запускаю console.log($(this).context.childNodes[4]) из каждого(), я получаю
<select class='colorList'>
<option value='blue'>primary color</option>
</select>
для каждой формы, которую я сделал, так что это определенно повторяет их. (к вашему сведению, я добавил основной цвет не динамически, просто в качестве теста)
как я могу добавить к внутренней части выбора?
Любые другие предложения приветствуются!
(также Jquery определенно работает, так что это не проблема с включением его в html;)