为了账号安全,请及时绑定邮箱和手机立即绑定

如果jquery找不到对象怎么检测?

标签:
JQuery

应用场景:

“灵感编程”网站的后台,在添加记录之后,body自动滚动从而定位到该行记录(方便继续添加);

使用的代码:

所在位置:

D:\yfwww\kuihua\Application\Tpl\Houtai\Public\js\Common\init.js

相关代码:

$(function(){

var last_top=300;

// var last_top=1000;

var gundong_top=0;

// 需要移动的距离

var obj=$('.table tr[class=current_item]');

console.log(obj);

// if (obj.length!=0) {

// if (obj) {

if (obj.offset().top) {

// if (obj != undefined) {

var self_top=obj.offset().top;

// console.log('self_top='+self_top);

if (self_top>last_top) {

gundong_top=self_top-last_top;

}

$('html,body').animate({

scrollTop: gundong_top,

}, 400,"swing",function (){

});

}

});

使用其他方式,均提示这样的错误:

webp

解决方案:

从上面console.log()中可以看到,如果没找到,这length为0,所以要使用length是否为0的检测方式才可以正确:

即:最后正确的代码为:

$(function(){

var last_top=300;

var gundong_top=0;

// 需要移动的距离

var obj=$('.table tr[class=current_item]');

if (obj.length!=0) {

var self_top=obj.offset().top;

if (self_top>last_top) {

gundong_top=self_top-last_top;

}

$('html,body').animate({

scrollTop: gundong_top,

}, 400,"swing",function (){

});

}

});

成功执行后,可以正确定位,如图:

webp

本文代码查询:

webp




作者:灵感编程
链接:https://www.jianshu.com/p/1d68bc2a630b


点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消