我如何使用external.IsSearchProviderInstalled函数?

时间:2012-08-26 19:28:20

标签: javascript google-chrome

如何使用函数external.IsSearchProviderInstalled?我尝试了external.IsSearchProviderInstalled('http://www.google.com')之类的内容,但我一直在Chrome中获得Error

功能external.IsSearchProviderInstalled是什么?应该如何在Chrome中使用?

1 个答案:

答案 0 :(得分:3)

IsSearchProviderInstalled的规范在这里:http://dev.w3.org/html5/spec-author-view/system-state-and-capabilities.html#dom-external-issearchproviderinstalled

您收到错误的最可能原因是“仅检查与调用此方法的脚本位于同一域中的结果页面”。因此,您只能检查您域中的提供商是否已安装。

e.g。如果您转到https://www.google.com,请打开Javascript控制台并说出来 external.IsSearchProviderInstalled('https://www.google.com')您将获得0,1或2,具体取决于您的搜索提供商设置。

但是,如果您在其他域上尝试相同的调用,则会引发错误。这是一个定义不明确的通用错误,但是Chromium代码中有一个FIXME响应更具描述性的东西(c.f。在src / chrome / renderer / external_extension.cc中的ExternalExtensionWrapper :: IsSearchProviderInstalled)