history.deleteUrl()

從瀏覽器歷史記錄中移除給定 URL 的所有訪問記錄。

這是一個非同步函式,返回一個 Promise

語法

js
let deletingUrl = browser.history.deleteUrl(
  details         // object
)

引數

details

object。包含要移除 URL 訪問記錄的物件。

url

string。要移除訪問記錄的 URL。

返回值

當訪問記錄已被移除時,一個 Promise 將會以無引數的形式 fulfilled。

示例

從歷史記錄中移除 "https://example.org/" 的所有訪問記錄,然後檢查 history.search() 不再返回此 URL。

js
let urlToRemove = "https://example.org/";

function onGot(results) {
  if (!results.length) {
    console.log(`${urlToRemove} was removed`);
  } else {
    console.log(`${urlToRemove} was not removed`);
  }
}

function onRemoved() {
  let searching = browser.history.search({
    text: urlToRemove,
    startTime: 0,
  });

  searching.then(onGot);
}

let deletingUrl = browser.history.deleteUrl({ url: urlToRemove });

deletingUrl.then(onRemoved);

從歷史記錄中移除最後訪問的頁面,並附帶一個監聽器 history.onVisitRemoved 以記錄被移除頁面的 URL。

js
function onRemoved(removeInfo) {
  if (removeInfo.urls.length) {
    console.log(`Removed: ${removeInfo.urls[0]}`);
  }
}

browser.history.onVisitRemoved.addListener(onRemoved);

function onGot(results) {
  if (results.length) {
    console.log(`Removing: ${results[0].url}`);
    browser.history.deleteUrl({ url: results[0].url });
  }
}

let searching = browser.history.search({
  text: "",
  startTime: 0,
  maxResults: 1,
});

searching.then(onGot);

擴充套件程式示例

瀏覽器相容性

注意:此 API 基於 Chromium 的 chrome.history API。本文件摘自 Chromium 程式碼中的 history.json