2

我正在通过“JavaScript: The Good Parts”一书学习 javascript。其中一个示例是淡入淡出功能,如下所示:

  1 var fade = function (node) {
  2     var level = 1;
  3     var step = function () {
  4         var hex = level.toString(16);
  5         node.style.backgroundColor = '#FFFF' + hex + hex;
  6         if (level < 15) {
  7             level += 1;
  8             setTimeOut(step, 100);
  9         }
 10     };
 11     setTimeOut(step, 100);
 12 };
 13 
 14 fade(document.body);  

但是我没有得到想要的效果。知道可能会出什么问题吗?

PS 这是我的 .html 文件。我不知道这是否有用。

  1 <?xml version="1.0" encoding="utf-8"?>
  2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  3     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  4 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  5     <head>
  6         <title>My program</title>
  7     </head>
  8     <body>
  9         <pre>
 10             <script type = "text/javascript" src = "program.js"></script>
 11         </pre>
 12     </body>
 13 </html>          

非常感谢!

4

2 回答 2

2

你有一个错字。它是setTimeout,带有小写的“o”。记住要经常看案例。你可以在http://jsbin.com/ezoxed/2/edit看到你的效果。

确保在调试 JavaScript 时使用浏览器的开发者控制台。通常可以通过按键盘上的 F12 来访问它。如果您查看那里,您会看到以下消息:

未捕获的 ReferenceError:未定义 setTimeOut

话虽如此,享受这本书。这是一本很棒的书!

于 2012-05-02T02:37:09.847 回答
1

是的,你有一个错字。请查看以下网址以获得实时效果:

http://jsfiddle.net/4HVQw/

于 2012-05-02T02:41:35.127 回答