I want to watch Check to see if there is indeed a problem with jQuery. I got the same error.
Later I read this book and found the problem.
setTimeout() accepts one character string parameter, it executes in the global scope, that is, it is outside any function. The simplest fix is to use a local function (anonymous function) to solve this problem.