3

javascript関数「GenerateNewNumber」がChromeで2回起動するのに、IEやFirefoxでは起動しない理由を誰か教えてもらえますか? Chrome 20.0.1132.57、IE9、Firefox 13 を使用。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script type="text/javascript" src="/App_JScript/jquery-1.4.4.min.js"></script>
    <script type="text/javascript" language="javascript">

        $(document).ready(function () {
            $('a#RandomNumber').click(function () { initiateNewNumber(); });
        });

        function initiateNewNumber() {

            setTimeout('GenerateNewNumber();', 3000);
        }

        function GenerateNewNumber() {
            var randomnumber = Math.floor(Math.random() * 1123);
            document.getElementById('RandomNumber').innerHTML += '<br>' + 'Random Number is ' + randomnumber;
        }
    </script>
</head>
<body>
    <a id="RandomNumber" href="#">Click for Random Number</a>
</body>
</html>

Stackoverflow を検索しましたが、役立つ提案が見つかりません。

前もって感謝します。

4

2 に答える 2

1

setTimeout は、最初のパラメーターとして関数を想定しています。

setTimeout(function() { GenerateNewNumber(); }, 3000);
于 2012-07-22T01:05:44.400 に答える
1

これを試して

window.setTimeout(GenerateNewNumber, 3000);

于 2012-07-22T01:07:53.643 に答える