问题标签 [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.

0 投票
1 回答
248 浏览

javascript - getElementById 一个 XBL 绑定的 XUL 元素

我正在尝试访问 XBL 绑定的 XUL 元素。我想从javascript控制它。

这是绑定。

这是 CSS 绑定

这是 xul 的实现

<

这是javascript访问

该javascript行下方的代码似乎没有被执行。我是否需要在绑定中添加一些内容才能访问该元素?

0 投票
1 回答
1069 浏览

xml - 动态评估存储在变量中的 XPath

我有一个变量:

我想/my/xpath/expression在以下ref属性中使用<xf:input>

在这里,我使用了硬编码的 XPath 表达式,但我想改用存储在$xpath变量中的 XPath 表达式,如下所示:

如何做到这一点?

0 投票
1 回答
464 浏览

xpath - 在提交中动态设置 XPath

我在 XBL 中制作自己的组件,我必须在其中使用提交。我有两个用户可以在表单生成器中提供的提交参数(资源、XPath)(例如使用自动完成控件):

然后我想调用 REST 提交,用户在表单构建器(@resource@xpath)中提供资源和结果 XPath:

我的问题在上面突出显示的行中:在instance('xpath')我有用户在表单生成器中提供的参数的值,例如:/pathToResult. 我想从与/pathToResult. 但不幸的instance('result')是:/pathToInstance而不是预期的结果,例如对于响应 XML:

结果实例的期望值是:MY RESULT !!!而不是/pathToResult.

但是,如果我像这样修改代码:

它运作良好,但在这种情况下,路径是硬编码的。相反,我想为 Form Builder 用户提供在控件配置中指定 XPath 表达式的机会。

如何修改我的代码以达到预期效果?

0 投票
1 回答
184 浏览

orbeon - 引用 Orbeon 中 XBL 组件的外部实例

我正在制作自己的组件,并在其中设置外部实例的值。例如,我的主要形式有:

在里面myControl.xbl我有:

但不幸的是,它看不到fr-form-model(“Reference to non-existing model id: fr-form-model”)这是可以理解的,因为组件被封装并且看不到外部元素。如何引用外部实例?

0 投票
1 回答
68 浏览

css - 注册消息头的样式表

我正在尝试为mail-tagfield标签扩展 xbl。此标签在消息显示期间使用。

我的扩展是引导程序,它使用窗口打开的观察者将任何 CSS 应用到该窗口。使用此代码:

显然,这样的 css 仅适用于 chrome 本身,而不适用于我真正需要的 tabmail:

在此处输入图像描述

在 tabmail 中注册样式表的最佳方法是什么?

0 投票
1 回答
413 浏览

javascript - 向匿名元素添加伪元素和光标样式以及事件监听器

toolbarbutton我在xul 元素中有这个匿名元素。这是一个xul:image。我想给它一个伪元素(:before:after)。在悬停时,我想赋予它cursor:pointer风格。我也想要addEventListener('click', ...)。然而,这些都不起作用。

我什至修改了 XBL 以注入我自己的堆栈元素,然后在堆栈元素上尝试这些东西,但它不起作用。

检查匿名元素 DOM Inspector 插件。(我试图在这个元素上设置点并给它一个伪元素并给它 onMouseDown 功能)

截屏

0 投票
1 回答
141 浏览

javascript - 动态解除绑定动态绑定 XBL 的方法

我在一个无需重启的附加组件中应用这样的绑定:

findbar.xml内容是:

这只是将一个按钮添加到FindBar标有“仅全字”的标签上。但现在要删除它,我只是取消注册样式表myServices.sss.unregisterSheet(cssUri, myServices.sss.USER_SHEET);,但这并没有解除绑定。

ask.mozilla.org 上的回答告诉我这是预期的行为,但没有提供解决方案。

我在想也许我应该动态添加绑定而不是通过 CSS,我没有对此进行测试,但它不符合 XBL 更新的 3 个原因:

  1. 绑定元素匹配指定不同绑定的样式规则
  2. 元素从绑定的文档中移除
  3. 元素被销毁(例如,通过关闭文档)

答案告诉我这是预期但时髦的行为。

0 投票
1 回答
63 浏览

firefox-addon - 如何使 xbl 图像不继承 list-style-image

我有这个 xbl 绑定:

但是,当list-style-imagetoolbarbutton(这是stack这些images的父级)上设置时,当我希望它为空白时,该image.profilist-badge元素正在使用它:(我当前的解决方法是将 的属性设置为不存在的图像。list-style-imagebadgetoolbarbutton

这是一个低优先级的问题。只是问,这样我有一天可以在 mdn 上记录这个。在我的插件中,我chrome://mozapps/skin/places/defaultFavicon.png通过设置徽章匿名节点的类来默认列表图像:

0 投票
1 回答
105 浏览

binding - XBL 在同一 XML 中的其他中使用绑定作为子项

我有这个 xml 绑定:

我想要做的是放置一个toolbarbutton使用我在上面定义的绑定的 id'ed profilist-tbb。我想在 XBL 文件中执行此操作。而不是让 css 告诉应用您知道的绑定?

我试过了,工具栏按钮甚至没有被创建:(

谢谢

0 投票
1 回答
65 浏览

firefox-addon - CSS 不适用于 Linux/Mac 上的匿名元素

我有这个疯狂的问题。一类不适用于我用 XBL 添加.profilis-tbb的匿名元素“ ”。.profilist-tbb-box

我有一个带有两个绑定的 xbl 文件。#tbb#tbb_box#tbb扩展toolbarbuttonwhich 有类.profilist-tbb,这#tbb_box是一个包含 this 的盒​​子元素toolbarbutton

好的结果看起来像这个图像,它看起来像这样,但仅在 Windows 上。

和 DOM Inspector 这个好东西(在 Windows XP、7、8.1 上):

现在问题出在 Linux 和 Mac 上,toolbarbutton没有采用 CSS。此图像来自 Linux:

在 Linux 中,尽管#tbb_boxXBL 成功应用(即使工具栏按钮没有):

结构是这样的,在 XUL 中我添加了一个盒子元素并赋予它类:

['xul:box', {class:'profilist-tbb-box', label:'blah'}];

然后这是适用的 XBL:(在 profilist-tbb 和 linux/max 的情况下,它应该适用,但不适用)

XBL 文件:

请帮我弄清楚为什么 XBL 不适用于框内的工具栏按钮。