我尝试通过Chrome上的notepad ++运行我的HTML代码,但似乎不起作用。这段代码基本上是围绕一个更大的圆圈旋转的动画。由于一些奇怪的原因,我的代码不运行动画。这是我的代码:
<html>
<head>
<style type="text/css">
div {
border-radius: 50%;
border: 2px solid #000;
position: fixed;
}
#center {
width: 200px;
height: 200px;
left: 100px;
top: 100px;
}
#sat0,
#sat1,
#sat2,
#sat3,
#sat4 {
width: 50px;
height: 50px;
}
</style>
</head>
<body>
<div id="center"></div>
<div id="sat0"></div>
<div id="sat1"></div>
<div id="sat2"></div>
<div id="sat3"></div>
<div id="sat4"></div>
<script language="JavaScript" type="text/javascript">
var pos = $('#center').position(),
radiusSat = $('#sat1').width() * 0.5,
radius = $('#center').width() * 0.5,
cx = pos.left + radius,
cy = pos.top + radius,
x, y, angle = 0,
angles = [],
spc = 360 / 5,
deg2rad = Math.PI / 180,
i = 0;
for (; i < 5; i++) {
angles.push(angle);
angle += spc;
}
/// space out radius
radius += (radiusSat + 10);
loop();
function loop() {
for (var i = 0; i < angles.length; i++) {
angle = angles[i];
x = cx + radius * Math.cos(angle * deg2rad);
y = cy + radius * Math.sin(angle * deg2rad);
$('#sat' + i).css({
left: x - radiusSat,
top: y - radiusSat
});
angles[i] = angles[i] + 1;
if (angles[i] > 360) angles[i] = 0;
}
requestAnimationFrame(loop);
}
</script>
</body>
</html>
我找不到任何可能犯的错误。请帮忙。谢谢。
答案 0 :(得分:2)
您没有在文件中添加jQuery
引用。
在<head>
标记
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.2/jquery.min.js"></script>
答案 1 :(得分:1)
这很简单。您正在尝试使用jQuery($)而不包含jQuery库。 请插入此
<script src="https://code.jquery.com/jquery-1.12.3.min.js"></script>
在此之前:
<script language="JavaScript" type="text/javascript">
或更好的<head></head>
代码