Firefoxのオーバーレイアドオンを維持しています。 Mozillaのアドオン検証プロセスをパスするには、innerHTML()
をDOM要素のコンテンツを操作する呼び出しに置き換える必要があります。FirefoxオーバーレイアドオンでinnerHTML()コールを置き換えたい
私はテーブルの新しいセルを作成し、このアプローチを使用してコンテンツを設定したいと思います:
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:// developer。 mozilla.org/en-US/docs/Web/API/HTMLTableRowElement/insertCell)を使用して、ノードをXULドキュメントに挿入しようとします。それはXUL要素の代わりにHTML要素を作成したようです。私たちはあなたが挿入している ''とそれが以前にどのように操作されたかについてもっと多くの情報を必要としています。アドオンの現在のバージョンへのリンクが役立ちます。 –
Makyen
@blexこれはXULドキュメントに挿入されています。 HTMLベースのサイト(例:jsfiddle.net)を使用して正確にプロトタイプを作成することはできません。XULをテストするには、ファイルがマシンのローカル(XUL Explorer)であるか、Mozillaベースのアプリケーション内で 'chrome://' URIを使用する必要があります。 – Makyen