問題タブ [xbl]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - getElementById XBL にバインドされた XUL 要素
XBL バインドされた XUL 要素にアクセスしようとしています。javascriptから制御したい。
これがバインディングです。
これはCSSバインディングです
これはxulの実装です
<
これはJavaScriptアクセスです
そのJavaScript行の下のコードは実行されていないようです。要素にアクセスするには、バインディングに何かを追加する必要がありますか?
xpath - 送信時に XPath を動的に設定する
XBL で独自のコンポーネントを作成しており、その中でサブミッションを使用する必要があります。ユーザーが Form Builder で (オートコンプリート コントロールのように) 提供できる送信の 2 つのパラメーター (リソース、XPath) があります。
@resource
次に、ユーザーがフォーム ビルダー (および@xpath
)で提供するリソースと結果の XPath を使用して、REST 送信を呼び出します。
私の問題は、上記の強調表示された行にあります。instance('xpath')
たとえば、フォームビルダーでユーザーが提供したパラメーターの値があります/pathToResult
。そして、 に関連付けられた送信リソースから XML 結果の一部を取得したいと考えています/pathToResult
。しかし、残念なことに、期待される結果の代わりに、たとえば応答 XML の場合instance('result')
:/pathToInstance
result-instance の期待値は:MY RESULT !!!
ではなく です/pathToResult
。
ただし、次のようにコードを変更した場合:
うまく機能しますが、この場合、パスはハードコーディングされています。代わりに、Form Builder ユーザーがコントロール構成で XPath 式を指定できるようにしたいと考えています。
期待される効果が得られるようにコードを変更するにはどうすればよいですか?
orbeon - Orbeon の XBL コンポーネントから外部インスタンスを参照する
私は独自のコンポーネントを作成しており、その中に外部インスタンスの値を設定したいと考えています。たとえば、私のメインフォームには次のものがあります。
そして私が持っている内部myControl.xbl
:
残念ながらfr-form-model
、コンポーネントはカプセル化されており、外部要素を表示できないため、理解できる ("存在しないモデル ID への参照: fr-form-model") は表示されません。外部インスタンスを参照するにはどうすればよいですか?
css - メッセージヘッダーのスタイルシートを登録する
mail-tagfield
タグの xbl を拡張しようとしています。このタグは、メッセージ表示中に使用されています。
私の拡張機能はブートストラップであり、ウィンドウを開いたオブザーバーを使用して、そのウィンドウに任意の css を適用します。このコードを使用して:
明らかに、そのような css はクロム自体にのみ適用され、実際に必要だったタブメールには適用されません。
タブメールにスタイルシートを登録する最良の方法は何ですか?
javascript - 動的にバインドされた XBL を動的にアンバインドする方法
再起動のないアドオンで次のようなバインディングを適用しています:
findbar.xml
内容は次のとおりです。
FindBar
これは、 「Whole Word Only」というラベルの付いたボタンを追加するだけです。しかし、今はそれを削除するために、スタイルシートの登録を解除していますがmyServices.sss.unregisterSheet(cssUri, myServices.sss.USER_SHEET);
、これはバインドを解除していません。
ask.mozilla.org での回答によると、これは予想される動作であるとのことでしたが、解決策はありませんでした。
CSS 経由ではなくバインディングを動的に追加する必要があるのではないかと考えていました。これはテストしていませんが、XBL 更新の 3 つの理由に適合しません。
- バインドされた要素が、別のバインディングを指定するスタイル ルールに一致する
- バインドされたドキュメントから要素が削除されます
- 要素が破棄された (たとえば、ドキュメントを閉じることによって)
答えは、それが予想されるがファンキーな動作であると私に言いました。
firefox-addon - xbl イメージが list-style-image を継承しないようにする方法
私はこのxblバインディングを持っています:
ただし、(これらの s の親である)にlist-style-image
設定すると、空白にしたいときに要素がこれを取得します:(現在の回避策は、のプロパティを存在しない画像に設定することです。toolbarbutton
stack
image
image.profilist-badge
list-style-image
badge
toolbarbutton
これは優先度の低い質問です。いつかmdnでこれを文書化できるようにお願いします。私のアドオンchrome://mozapps/skin/places/defaultFavicon.png
では、バッジアノンノードのクラスを設定して、リストイメージをデフォルトに設定しています。
binding - XBL バインディングを同じ XML 内の他の子として使用
私はこのxmlバインディングを持っています:
私がやりたいのはtoolbarbutton
、上で定義したバインディング i を使用する a を配置することです id'ed profilist-tbb
。XBLファイル内でこれを行いたいです。あなたが知っているバインディングを適用するようにCSSに指示させるのではなく?
私はこれを試しましたが、ツールバーボタンは作成されていません:(
どうも