mouseenter 里面的 timer 被前面的 var 声明在函数作用域里面了呀。至少要把var去掉。并且setInterval函数的第一个参数最好不要用字符串,这样写相当于用了eval,被认为是不好的实践。像你这种情况,第一个参数直接传入start函数就行。setInterval(start, ???) 这样。可以参考 https://developer.mozilla.org...说传入字符串不推荐的原因写在了上述资源的第三条。或者可以参考《Javascript 语言精粹》的相关段落(刚查了一下,在附录B)。
mouseenter 里面的 timer 被前面的 var 声明在函数作用域里面了呀。至少要把var去掉。
并且setInterval函数的第一个参数最好不要用字符串,这样写相当于用了eval,被认为是不好的实践。像你这种情况,第一个参数直接传入start函数就行。setInterval(start, ???) 这样。
可以参考 https://developer.mozilla.org...
说传入字符串不推荐的原因写在了上述资源的第三条。或者可以参考《Javascript 语言精粹》的相关段落(刚查了一下,在附录B)。