tabs.detectLanguage()

Erkennt die primäre Sprache des Inhalts in einem Tab unter Verwendung des Compact Language Detector (CLD).

Dies ist eine asynchrone Funktion, die ein Promise zurückgibt.

Syntax

js
let detecting = browser.tabs.detectLanguage(
  tabId,                  // optional integer
  callback                // optional function
)

Parameter

tabId Optional

integer. Standardmäßig wird der aktive Tab des aktuellen Fensters verwendet.

callback Optional

function. Derzeit wird, wenn ein tabId angegeben ist, dieser Rückruf verwendet, um die Ergebnisse zurückzugeben, anstatt ein Promise zurückzugeben. Der Rückruf erhält als einziges Eingabeparameter einen String, der den erkannten Sprachcode wie en oder fr enthält.

Rückgabewert

Ein Promise, das mit einem String erfüllt wird, der einen ISO-Sprachcode wie en oder fr darstellt. Für eine vollständige Liste der von dieser Methode unterstützten Sprachen sehen Sie kLanguageInfoTable. Für eine unbekannte Sprache wird "und" zurückgegeben (siehe Fehler 1288263). Wenn ein Fehler auftritt, wird das Promise mit einer Fehlermeldung abgelehnt.

Beispiele

Erkennt und protokolliert die Sprache des aktiven Tabs, wenn der Benutzer auf eine Browser-Aktion klickt:

js
function onLanguageDetected(lang) {
  console.log(`Language is: ${lang}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

browser.browserAction.onClicked.addListener(() => {
  browser.tabs.detectLanguage().then(onLanguageDetected, onError);
});

Erkennt und protokolliert die Sprache jedes offenen Tabs, wenn der Benutzer auf eine Browser-Aktion klickt (beachten Sie, dass dieses Beispiel die Berechtigung "tabs" erfordert):

js
function onLanguageDetected(url, lang) {
  console.log(`Language in ${url} is: ${lang}`);
}

function onError(error) {
  console.log(`Error: ${error}`);
}

function detectLanguages(tabs) {
  for (const tab of tabs) {
    browser.tabs
      .detectLanguage(tab.id)
      .then((lang) => onLanguageDetected(tab.url, lang), onError);
  }
}

browser.browserAction.onClicked.addListener(() => {
  browser.tabs.query({}).then(detectLanguages, onError);
});

Browser-Kompatibilität

BCD tables only load in the browser

Hinweis: Diese API basiert auf der chrome.tabs API von Chromium. Diese Dokumentation stammt aus tabs.json im Chromium-Code.