首页 > 解决方案 > 如果我将网站置于在线(主机)但如果它是本地的一切顺利,为什么图像没有保存?

问题描述

我正在制作一个网站,并试图允许用户在本地保存图像(我不希望它在服务器上)。我有适用于我的本地 JavaScript 代码,我可以毫无问题地保存图像。它显示在屏幕上并且不会消失,但是如果我将它放在网上它就不起作用。

在线我收到控制台错误:

Uncaught ReferenceError: $ is not defined
at FileReader.reader.onload (VM71:27)

HTML 代码:

 <img style="width: 20%;" src="#" id="photo_view" />
 <input type='file' onchange="readURL(this);" accept="image/*" />
 <script type="text/javascript" src="http://code.jquery.com/jquery-1.6.4.min.js"></script>

Javascript代码:

   $("#photo_view").attr("src", localStorage.getItem('savedImage') || '#') // restore

function readURL(input) {
  if (input.files && input.files[0]) {
    const reader = new FileReader();

  reader.onload = function (e) { 
    $(".file-upload-image").attr("src", e.target.result);  
    $(".image-title").html(input.files[0].name);

    if (localStorage.getItem('savedImage')) {
      localStorage.removeItem('savedImage');
    }
    localStorage.setItem('savedImage', e.target.result);
  }; 
    reader.readAsDataURL(input.files[0]);
  } 
} 

错误在哪里,我该如何纠正?

在线站点链接:https ://bravojob.000webhostapp.com/

控制台中还有其他几个错误,但由于免费托管网站的广告而出现。

标签: javascript

解决方案


您的站点使用 HTTPS,但尝试从不安全的位置 (HTTP) 加载 jQuery。许多现代浏览器默认会阻止它。如果是这种情况,您应该会在浏览器控制台中看到错误消息。


推荐阅读