file:// URL 在 Mac 和 PC 上均可同样使用(Google Chrome)

file:// URL 在 Mac 和 PC 上均可同样使用(Google Chrome)

我正在尝试创建一个“启动”页面,该页面只是一个简单的 HTML 页面,其中包含我可以自己编辑的书签链接。我希望在 Google Chrome 中打开新标签时出现此页面。(换句话说,我正在尝试创建一个自定义 HTML 页面,该页面会自动加载到新的 Chrome 标签中。)

我在 Google Chrome 中使用“新标签重定向”扩展程序在打开新标签时加载此文件。挑战在于使用可在 Mac 和 PC 上运行的 file:// URL。

我有两台笔记本电脑,一台是 Mac,另一台是 PC。

file:///tmp/bookmarks.html当我将书签放在 /tmp/bookmarks.html 中时,它可以在 macos 上运行,但它在 PC 上不起作用。(我尝试在 PC 上创建“c:\tmp\bookmarks.html”,但 Chrome 无法识别它。)

file://C:/tmp/bookmarks.html可以在 PC 上运行,但不能在 macos 上运行(我尝试在那里创建/C:/并链接,但没有成功)。tmp/tmp

是否有file://可以在两个系统上运行的 URL?

PS 之前,我尝试使用 http:// URL(运行本地 Web 服务器来共享 bookmarks.html),但与加载 file:// 资源相比,它的加载速度明显较慢

答案1

编辑:我误解了这个问题。OP 可以使用 chrome-extension:// URL 方法。

根据维基百科,您的安装路径在这里:

视窗:C:\Users\**username**\AppData\Local\Google\Chrome\User Data\Default\Extensions\icpgjfneehieebagbmdbhnlpiopdcmna\

苹果:Macintosh HD\Users\**username**\Library\Application Support\Google\Chrome\Default\Extensions\icpgjfneehieebagbmdbhnlpiopdcmna\

您可以将文件放在那里以便它出现在两个地方。

chrome-extension://icpgjfneehieebagbmdbhnlpiopdcmna/

为了让大家更清楚地了解这一点,C:\Users\Username\AppData\Local\Google\Chrome\User Data\Default\Extensions\icpgjfneehieebagbmdbhnlpiopdcmna\custom-html.html可以访问chrome-extension://icpjfneehieebagbmdbhnlpiopdcmna/custom-html.html


旧答案:据我了解,您正在尝试在自定义 HTML 文档中创建锚点?

您可以为 Mac 编写文档,然后使用脚本重写前缀:

// check if we are using Windows -- https://stackoverflow.com/questions/9514179/how-to-find-the-operating-system-version-using-javascript

if (window.navigator.userAgent.indexOf("Windows") != -1){

  // loop over all the anchors
  Array.from(document.getElementsByTagName("a")).forEach((a) => {

    // if it starts with file
    if (a.href.indexOf("file:///" == 0)) { 
      
      // do the actual replace (adjust as needed)
      a.href = a.href.replace("file:///", "file://C:/"); 
    }
  });
}

相关内容