Javascript 代码在Codepen中工作,但不适用于我的桌面文件

Javascript 代码在Codepen中工作,但不适用于我的桌面文件,javascript,html,codepen,Javascript,Html,Codepen,我正在尝试使用index.html文件和script.js文件运行几行简单的代码,其他什么都没有 在HTML文件中,我有doctype HTML: <html> <head> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="javascript/script.js"></scr

我正在尝试使用index.html文件和script.js文件运行几行简单的代码,其他什么都没有

在HTML文件中,我有doctype HTML:

<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="javascript/script.js"></script>
</head>
<body>

  <div id="content1">This is content 1  </div>
  <div id="content2">This is content 2  </div>
  <div id="content3">This is content 3  </div>

</body>
</html>

这是内容1
这是内容2
这是内容3
对于我的javascript部分,我有:

var elems = $("div");
if (elems.length) {
  var keep = Math.floor(Math.random() * elems.length);
  for (var i = 0; i < elems.length; ++i) {
    if (i !== keep) {
      $(elems[i]).hide();
    }
  }
}
var elems=$(“div”);
if(元素长度){
var keep=Math.floor(Math.random()*elems.length);
对于(变量i=0;i
当我在CodePen中运行这个程序时,甚至在这个网站的代码编辑器上运行,它工作得很好。但是,当我使用桌面上的文件(index.html、script.js)时,它不起作用。我相信文件夹结构是正确的(script.js在javascript文件夹中)


谢谢大家

如果文档准备就绪,请将代码包装在此函数中以执行它

$(document).ready(function (){ 
// your code goes here
 });

在关闭主体标记之前移动脚本标记:

<script src="javascript/script.js"></script>
</body>
…以便在DOM就绪时运行代码

$(document).ready(function (){ 
// your code goes here
 });
您没有用
jquery
标记您的问题,但在您似乎使用它时,您可以使用此较短的代码执行与上面基本相同的操作:

$(function() {
    var $elems = $("div").hide(),
    $elems.eq(Math.floor(Math.random() * $elems.length)).show();
});

如果代码在codepen上运行,那么代码显然没有问题。请尝试检查chrome开发工具(ctrl+shift+i,Sources选项卡)中的文件,看看它是什么样子。别忘了。如果此代码是解决方案,您能将其设置为可接受的答案吗?