1

このコードを使用してアンカー要素を追加し、onclick イベントを Javascript に設定しようとしています。しかし、イベントはロードされていません。Firebug を介して DOM を見ると、Mootools が実際に追加されていることがわかります。この要素には、Mootools 要素のほぼすべての機能が含まれています。しかし、addEvent がありません。

var delete_ctl = new Element('a', 
{
    'href' : '#',
    'events' : 
    {
        'click' : function() { alert('foo'); }
    }   
});


delete_ctl.appendText('Remove');
delete_ctl.inject(root);
delete_ctl.addEvent('click', function() { alert('foo'); });

Firebug でレンダリングされたコードには、onclick イベントが設定されているという兆候がありません。コードが実行されると、Firebug は「addEvent は関数ではありません」という Javascript エラーを報告します。ここで基本的な何かが欠けているように感じます。

4

1 に答える 1

1

あなたのコードは私のマシンで正常に動作します。「foo」のアラートを 2 回受け取ります。
mootools の正しいバージョンを使用していることを確認してください。
root が実際に DOM の HTML 要素を参照していることを確認してください。
このコードは、DOM のロード (onload または domready イベント) が完了した後に実行してください。
幸運を。

于 2009-02-18T17:12:32.990 に答える