0

(id)「ABC123」というオブジェクトがある場合、そのオブジェクトまで自動でスクロールダウンしたい。このオブジェクトが存在する場合、それは正常に機能します。しかし、そうでない場合、 「TypeError: $(...).offset(...) is undefined」というエラーが表示されます。

私のコードはこのエラーを回避する必要がありますが、機能しません:

if(typeof($('#ABC123')) != 'undefined') {
        $('html, body').animate({ scrollTop: ($("#ABC123").offset().top-100) }, 0).scroll();
    }
4

2 に答える 2

4

jQuery コレクションは決してundefined.

空でないことをテストするだけです:

if ($('#ABC123').length) {
于 2013-04-07T16:27:06.233 に答える
0

jQuery オブジェクトは、引数を渡さなくてもnullorになることはありません。この場合、単に空で何もしません。undefined$()

空かどうかを確認したいようです:

if ($('#ABC123').length) {
    $('html, body').animate({ scrollTop: ($("#ABC123").offset().top-100) }, 0).scroll();
});
于 2013-04-07T16:32:34.417 に答える