Я поддерживаю надстройку надстройки для Firefox. Чтобы передать процесс проверки надстройки Mozilla, я должен заменить innerHTML()
вызовы, управляющие содержимым элемента DOM.Я хочу заменить innerHTML() вызов в Firefox overlay addon
создать новую ячейку таблицы, и хотел бы установить содержание с помощью этого подхода:
var newCell = tbl.rows[row].insertCell(col);
var div = document.createElement('div');
div.appendChild(document.createTextNode(content));
newCell.appendChild(div);
сообщение об ошибке:
TypeError: Argument 1 of Node.appendChild does not implement interface Node.
[email protected]://gre/modules/RemoteAddonsChild.jsm:461:5
EventTargetChild/[email protected]://gre/modules/RemoteAddonsChild.jsm:431:38
Добавление сообщения журнала между линиями показывают, что тип нового cell
и div
элемент различны:
var newCell = tbl.rows[row].insertCell(col);
console.log("cell-0: " + newCell);
var div = document.createElement('div');
console.log("div-0: " + div);
div.appendChild(document.createTextNode(content));
console.log("div-1: " + div);
console.log("cell-1: " + newCell);
newCell.appendChild(div);
console.log("cell-2: " + newCell);
сообщения журнала являются:
cell-0: [object CPOW [object HTMLTableCellElement]]
div-0: [object XULElement]
div-1: [object XULElement]
cell-1: [object CPOW [object HTMLTableCellElement]]
Любые идеи, что я делаю неправильно здесь?
Заранее спасибо.
Извините, не помогая здесь, но я использую FF 48, и это работает: https://jsfiddle.net/pj2eugLh/ – blex
Вы используете ['HTMLTableRowElement.insertCell()'] (https: // разработчик. mozilla.org/en-US/docs/Web/API/HTMLTableRowElement/insertCell), чтобы попытаться вставить узлы в документ XUL. Кажется, он создал элементы HTML вместо элементов XUL. Нам понадобится дополнительная информация о '', которую вы вставляете и как она была ранее обработана. Полезной будет ссылка на текущую версию надстройки wo9uld. –
Makyen
@blex. Вставляется в документ XUL. Невозможно точно прототипировать его, используя сайт на основе HTML (например, jsfiddle.net).Тестирование XUL потребует, чтобы файл был локальным для машины (XUL Explorer) или с использованием 'chrome: //' URI в приложении на основе Mozilla. – Makyen