Datepicker UI src from jQuery 不起作用,但 src from Google 可以。为什么?
Datepicker UI src from jQuery does not work, but src from Google does. Why?
我正在尝试使用 jQuery 日期选择器:
http://jqueryui.com/datepicker/
有趣的是,我将源代码复制并粘贴到一个 .html 文件中,然后在 Chrome 中打开它。日期选择器不起作用。这是来源:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker - Default functionality</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker"></p>
</body>
</html>
但是,我将脚本和 css 的源代码从 jQuery 更改为 Google,它突然起作用了。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker - Default functionality</title>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker"></p>
</body>
</html>
我很高兴看到它起作用,但我不明白为什么。这尤其令人困惑,因为我想象直接来自 jQuery 的 src,这段代码的来源,应该比 Google 提供的更可靠,对吗?
在 //
前面添加 http:
// 不能单独使用。
封禁的原因:
script src="//code.jquery.com/jquery-1.10.2.js">
将在 jQueryUI 页面中工作是因为他们正在为他们引用本地文件(该文件存在于他们的服务器中)。
当您尝试在浏览器上使用日期选择器时,您将不得不从外部来源(如 googleapis 或 jquery.com)引用 jQuery。正如 CMadi 所说,将 http: 放在 // 前面对你有用。
另一个解决方案是下载您引用的所有 .js 和 .css 并将它们放在您拥有的 .html 文件旁边。
我正在尝试使用 jQuery 日期选择器: http://jqueryui.com/datepicker/
有趣的是,我将源代码复制并粘贴到一个 .html 文件中,然后在 Chrome 中打开它。日期选择器不起作用。这是来源:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker - Default functionality</title>
<link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
<script src="//code.jquery.com/jquery-1.10.2.js"></script>
<script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker"></p>
</body>
</html>
但是,我将脚本和 css 的源代码从 jQuery 更改为 Google,它突然起作用了。
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>jQuery UI Datepicker - Default functionality</title>
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/themes/base/jquery-ui.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8/jquery-ui.min.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css">
<script>
$(function() {
$( "#datepicker" ).datepicker();
});
</script>
</head>
<body>
<p>Date: <input type="text" id="datepicker"></p>
</body>
</html>
我很高兴看到它起作用,但我不明白为什么。这尤其令人困惑,因为我想象直接来自 jQuery 的 src,这段代码的来源,应该比 Google 提供的更可靠,对吗?
在 //
前面添加 http:// 不能单独使用。
封禁的原因:
script src="//code.jquery.com/jquery-1.10.2.js">
将在 jQueryUI 页面中工作是因为他们正在为他们引用本地文件(该文件存在于他们的服务器中)。
当您尝试在浏览器上使用日期选择器时,您将不得不从外部来源(如 googleapis 或 jquery.com)引用 jQuery。正如 CMadi 所说,将 http: 放在 // 前面对你有用。
另一个解决方案是下载您引用的所有 .js 和 .css 并将它们放在您拥有的 .html 文件旁边。