我有一个脚本,我希望最终用户能够指定一个图像(使用文件选择器)来更改网站的背景。但是我不希望他们实际上将文件上传到服务器,因为这不仅是多余的(因为他们会在后台更改时重新下载它),而且因为它是一个用户脚本也是不可能的。更确切地说,我只希望背景src更改为本地文件路径。
这是如何最好地完成?由于某种原因,文件选择器表单元素只允许javascript访问文件名,而不是完整的路径。只要用户不需要手动输入文件路径,我可以使用不同的HTML元素。
您可以使用FileReader API将图像编码为data:
URL并将其保存在浏览器的LocalStorage中。但是,如果用户清除了浏览器历史记录,背景也会丢失。
我已经写了一些示例代码让你开始: