0

mooTools を使用しており、タグのクリック イベントで関数 TestA() を呼び出す必要がありますが、機能しません。$().addEvent(...) を介してイベントをタグ付けできることはわかっていますが、次のようなアプローチを使用する必要があります。

<script type='text/javascript'>
    window.addEvent('domready', function () {           
          function TestA(){}
      });

    function TestB(){}

</script>

<a href="#" onclick="TestA()">Test</a>
4

2 に答える 2

1

DOM の準備が整ったときにのみ TestA 関数を定義する理由はありますか? TestA() が機能しない理由は、domready ハンドラーとして定義されている関数のスコープ内でのみ定義されているためです。

あなたが本当にやっている方法でそれを行う必要がある場合は、その関数の外で変数をスコープする必要があります:

<script type='text/javascript'>

    var TestA;

    window.addEvent('domready', function () {           
        TestA = function(){}
    });

    function TestB(){}

</script>

<a href="#" onclick="TestA()">Test</a>
于 2012-05-09T07:44:42.397 に答える
0

function TestA(){}の代わりにTestA = function (){}表記を使用する必要があります。

<script type='text/javascript'>
    window.addEvent('domready', function () {           
          TestA = function (){}
      });

    function TestB(){}

</script>

<a href="#" onclick="TestA()">Test</a>
于 2012-05-09T07:48:55.167 に答える