0

js コードはフッターにあり、div がページにない場合はエラーが表示されます。$('id-of-the-div')これは、 notを使用している場合にのみ発生し$$('#id-of-the-div')ます。エラーはホールスクリプトを停止します。

JSコード

window.addEvent('domready', function() {  



    $('id-of-the-div').addEvent('click', function() { 

          alert('click');
        });

});

エラー

Uncaught TypeError: Cannot call method 'addEvent' of null 
4

1 に答える 1

1

要素参照はオブジェクトまたは null を返します。null の場合、真実ではありません。現在のコンテキスト オブジェクトのプロパティと同じように確認できます。

パターン 1:

var el = $('someel');
if (el) { 
    el.addEvent({ ... });
}

// or 
if (!el) return;

// or 
el && el.addEvent({ });

パターン 2、イベントを親要素に割り当ててイベント委任を使用する

$('main').addEvent('click:relay(#otherid)', function(event, otherel){

});

パターン 3: 項目がない場合、コレクションは繰り返されません:

$$('#someid').addEvent('click', fn);

見つからない場合、上記は addEvent をまったく呼び出しません。

パターン1が最も一般的です

于 2012-10-10T15:38:26.883 に答える