jQuery Datepicker在Safari中工作,但不是FF或Chrome

时间:2015-04-07 22:17:00

标签: javascript jquery html datepicker

我已经简化了代码,希望能够更容易理解。

HTML

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>

<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.11/jquery-ui.min.js"></script>

<script src="script.js"></script>

<link rel="stylesheet" type="text/css" media="all"
      href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.7.2/themes/smoothness/jquery-ui.css"/>

<div type="text" id="datepicker">

的Javascript

$(function() {
$("#datepicker").datepicker();
});

我已将我的HTML和javascript文件上传到我学校的托管空间here。当我访问Safari上的链接时,日历显示正常,但是当我在Firefox或Chrome上打开它时没有任何反应。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

您的学校托管使用SSL,因此它是https://链接。

当用户访问通过HTTP提供的页面时,他们的连接将被打开以进行窃听和中间人攻击。
当用户访问通过HTTPS提供的页面时,他们与Web服务器的连接将通过SSL进行身份验证和加密,从而防止窃听者和中间人攻击。

但是,如果HTTPS页面包含HTTP内容,则攻击者可以读取或修改HTTP部分,即使主页面是通过HTTPS提供的。

当HTTPS页面包含HTTP内容时,我们将该内容称为“混合”。用户正在访问的网页仅部分加密,因为某些内容是通过HTTP未加密检索的。

Chrome和Firefox现在Mixed Content Blockers阻止了HTTPS页面上的某些HTTP请求。

出于安全原因,当加载这些脚本的网页使用https时,Firefox和Chrome会阻止所有未从https地址加载的脚本。

要解决此问题,只需从

更改脚本的网址即可
http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

Google支持两者。
并使用当前版本的jQuery,版本1.4已经有五十年了!