我有一个扩展使用(滥用?)fastFind
接口(基本上是查找栏)。具体来说,我使用_find
和_findAgain
函数在给定的网页中实际搜索给定的术语。我的扩展程序需要跟踪上次执行的搜索,这是我在Firefox 24及更低版本中的操作方式:
var cachedFindTerm = getBrowser().fastFind.searchString;
但是,从Firefox 25开始,浏览器对象似乎不再存在fastFind
属性。因此,我无法访问查找栏的搜索字符串。我尝试了以下操作,但即使在使用_find
或_findAgain
函数进行搜索后,它也会返回空白:
var findBar = getBrowser().getFindBar();
var cachedFindTerm = findBar._findField.value; // This is always blank!
有没有更好的方法来获取Firefox 25中的查找栏界面使用的上一个搜索字符串?我肯定没有看到任何明显的......
答案 0 :(得分:1)
当使用“API”(或更确切地说,私有方法,_
前缀方法时,无法以任何方式保证不随任何版本更改),_findField
将无法获得更新。
你必须自己投入新的价值。
有些事情:
gFindBar._find(gFindBar._findField.value = term);