Firefox 访问nsIAccessibleText XPCOM接口

Firefox 访问nsIAccessibleText XPCOM接口,firefox,xpcom,Firefox,Xpcom,我正在尝试在nsIAccessibleText XPCOM接口上使用getCharacterExtents()方法。不幸的是,我无法获得有关如何查询此接口的任何文档 let accessibleService = Components.classes["@mozilla.org/accessibilityService;1"].createInstance(), nsIAccessibilityService = accessibleService.QueryInterface(Com

我正在尝试在nsIAccessibleText XPCOM接口上使用getCharacterExtents()方法。不幸的是,我无法获得有关如何查询此接口的任何文档

let accessibleService  = Components.classes["@mozilla.org/accessibilityService;1"].createInstance(),
    nsIAccessibilityService = accessibleService.QueryInterface(Components.interfaces.nsIAccessibilityService);
显然,这是失败的。 如何查询
nsIAccessibleText
接口并使用
getCharacterExtents
方法


这是关于这个的MDN文档:

好的,在我的头撞了一下之后,我设法让它工作起来。从一些维克多·波洛夫和其他来自IRC的莫兹利安人那里得到了一些帮助

let accService = Components.classes["@mozilla.org/accessibleRetrieval;1"].createInstance(Components.interfaces.nsIAccessibleRetrieval),
acc = accService.getAccessibleFor(aNode),
nsIAccessibleText = acc.QueryInterface(Components.interfaces.nsIAccessibleText)
// aNode is a DOM node in pres shell 0
希望这对别人有帮助