问题标签 [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行下方的代码似乎没有被执行。我是否需要在绑定中添加一些内容才能访问该元素?
xml - 动态评估存储在变量中的 XPath
我有一个变量:
我想/my/xpath/expression
在以下ref
属性中使用<xf:input>
:
在这里,我使用了硬编码的 XPath 表达式,但我想改用存储在$xpath
变量中的 XPath 表达式,如下所示:
如何做到这一点?
xpath - 在提交中动态设置 XPath
我在 XBL 中制作自己的组件,我必须在其中使用提交。我有两个用户可以在表单生成器中提供的提交参数(资源、XPath)(例如使用自动完成控件):
然后我想调用 REST 提交,用户在表单构建器(@resource
和@xpath
)中提供资源和结果 XPath:
我的问题在上面突出显示的行中:在instance('xpath')
我有用户在表单生成器中提供的参数的值,例如:/pathToResult
. 我想从与/pathToResult
. 但不幸的instance('result')
是:/pathToInstance
而不是预期的结果,例如对于响应 XML:
结果实例的期望值是:MY RESULT !!!
而不是/pathToResult
.
但是,如果我像这样修改代码:
它运作良好,但在这种情况下,路径是硬编码的。相反,我想为 Form Builder 用户提供在控件配置中指定 XPath 表达式的机会。
如何修改我的代码以达到预期效果?
orbeon - 引用 Orbeon 中 XBL 组件的外部实例
我正在制作自己的组件,并在其中设置外部实例的值。例如,我的主要形式有:
在里面myControl.xbl
我有:
但不幸的是,它看不到fr-form-model
(“Reference to non-existing model id: fr-form-model”)这是可以理解的,因为组件被封装并且看不到外部元素。如何引用外部实例?
css - 注册消息头的样式表
我正在尝试为mail-tagfield
标签扩展 xbl。此标签在消息显示期间使用。
我的扩展是引导程序,它使用窗口打开的观察者将任何 CSS 应用到该窗口。使用此代码:
显然,这样的 css 仅适用于 chrome 本身,而不适用于我真正需要的 tabmail:
在 tabmail 中注册样式表的最佳方法是什么?
javascript - 向匿名元素添加伪元素和光标样式以及事件监听器
toolbarbutton
我在xul 元素中有这个匿名元素。这是一个xul:image
。我想给它一个伪元素(:before
,:after
)。在悬停时,我想赋予它cursor:pointer
风格。我也想要addEventListener('click', ...)
。然而,这些都不起作用。
我什至修改了 XBL 以注入我自己的堆栈元素,然后在堆栈元素上尝试这些东西,但它不起作用。
检查匿名元素 DOM Inspector 插件。(我试图在这个元素上设置点并给它一个伪元素并给它 onMouseDown 功能)
javascript - 动态解除绑定动态绑定 XBL 的方法
我在一个无需重启的附加组件中应用这样的绑定:
findbar.xml
内容是:
这只是将一个按钮添加到FindBar
标有“仅全字”的标签上。但现在要删除它,我只是取消注册样式表myServices.sss.unregisterSheet(cssUri, myServices.sss.USER_SHEET);
,但这并没有解除绑定。
ask.mozilla.org 上的回答告诉我这是预期的行为,但没有提供解决方案。
我在想也许我应该动态添加绑定而不是通过 CSS,我没有对此进行测试,但它不符合 XBL 更新的 3 个原因:
- 绑定元素匹配指定不同绑定的样式规则
- 元素从绑定的文档中移除
- 元素被销毁(例如,通过关闭文档)
答案告诉我这是预期但时髦的行为。
firefox-addon - 如何使 xbl 图像不继承 list-style-image
我有这个 xbl 绑定:
但是,当list-style-image
在toolbarbutton
(这是stack
这些image
s的父级)上设置时,当我希望它为空白时,该image.profilist-badge
元素正在使用它:(我当前的解决方法是将 的属性设置为不存在的图像。list-style-image
badge
toolbarbutton
这是一个低优先级的问题。只是问,这样我有一天可以在 mdn 上记录这个。在我的插件中,我chrome://mozapps/skin/places/defaultFavicon.png
通过设置徽章匿名节点的类来默认列表图像:
binding - XBL 在同一 XML 中的其他中使用绑定作为子项
我有这个 xml 绑定:
我想要做的是放置一个toolbarbutton
使用我在上面定义的绑定的 id'ed profilist-tbb
。我想在 XBL 文件中执行此操作。而不是让 css 告诉应用您知道的绑定?
我试过了,工具栏按钮甚至没有被创建:(
谢谢
firefox-addon - CSS 不适用于 Linux/Mac 上的匿名元素
我有这个疯狂的问题。一类不适用于我用 XBL 添加.profilis-tbb
的匿名元素“ ”。.profilist-tbb-box
我有一个带有两个绑定的 xbl 文件。#tbb
和#tbb_box
。#tbb
扩展toolbarbutton
which 有类.profilist-tbb
,这#tbb_box
是一个包含 this 的盒子元素toolbarbutton
。
好的结果看起来像这个图像,它看起来像这样,但仅在 Windows 上。
和 DOM Inspector 这个好东西(在 Windows XP、7、8.1 上):
现在问题出在 Linux 和 Mac 上,toolbarbutton
没有采用 CSS。此图像来自 Linux:
在 Linux 中,尽管#tbb_box
XBL 成功应用(即使工具栏按钮没有):
结构是这样的,在 XUL 中我添加了一个盒子元素并赋予它类:
['xul:box', {class:'profilist-tbb-box', label:'blah'}];
然后这是适用的 XBL:(在 profilist-tbb 和 linux/max 的情况下,它应该适用,但不适用)
XBL 文件:
请帮我弄清楚为什么 XBL 不适用于框内的工具栏按钮。