3

関数はどのようexternal.IsSearchProviderInstalledに使用されることを意図していますか? 私は次のようなことを試しましたが、Chromeでexternal.IsSearchProviderInstalled('http://www.google.com')引き続き取得していますか?Error

機能は何external.IsSearchProviderInstalledですか? Chromeでどのように使用する必要がありますか?

4

1 に答える 1

3

IsSearchProviderInstalled の仕様はこちら: http://dev.w3.org/html5/spec-author-view/system-state-and-capabilities.html#dom-external-issearchproviderinstalled

エラーが発生する最も可能性の高い理由は、「このメソッドを呼び出すスクリプトと同じドメインの結果ページのみがチェックされる」ためです。そのため、ドメインのプロバイダーがインストールされているかどうかのみを確認できます。

例: https://www.google.comにアクセスし、Javascript コンソールを開いて external.IsSearchProviderInstalled('https://www.google.com')、検索プロバイダーの設定に応じて 0、1、または 2 が返されると伝えます。

ただし、別のドメインで同じ呼び出しを試みると、エラーがスローされます。これはよく定義されていない一般的なエラーですが、Chromium コードには、より説明的なもので応答するための FIXME があります (src/chrome/renderer/external_extension.cc の ExternalExtensionWrapper::IsSearchProviderInstalled を参照)。

于 2012-08-27T05:54:28.920 に答える