雨中徒步八英里 2019-09-13 00:06 采纳率: 0%
浏览 421

jQuery中利用animate改变left边距后,获取值为上一个

问题描述:
在修改left的值后,图片的确发生了位置的改变,符合预期效果,但是在获取图片的left值时**,获取到的是上一次的left值**,希望大佬指点一二QAQ.
部分代码如下:

            //封装切换图片函数
            function change_animate(index){
                //根据传入的index下标值,显示对应的图片,这里传 0 
                $(".web_body_showPicture>ul").eq(0).animate({
                    //切换效果已经成功出现
                    "left":index*-1*992+"px"
                },1000, showDot());
            //问题如下:输出获取到的left并不是0,设为0之间的left值
                console.log($(".web_body_showPicture").children("ul").eq(0).position().left);
            }
  • 写回答

2条回答 默认 最新

  • 雨中徒步八英里 2019-09-13 13:02
    关注

    将showDot函数添上function如下,已经解决

    function(){
                        showDot();
                    }
    

    1.函数并不会等待animate执行完毕才继续往下执行语句,也就是说,animate就像是新开一个线程一样
    2.回调函数不加function包装,会在函数没有执行完毕的时候,直接调用
    注:以上都是我实验后,个人总结的,或许实际上和我的推测并不一样QAQ

    评论

报告相同问题?

悬赏问题

  • ¥20 无法创建新的堆栈防护界面
  • ¥15 sessionStorage在vue中的用法
  • ¥15 wordpress更换域名后用户图片头像不显示
  • ¥15 如何在ubunto上安装CEF (Chromium Embedded Framework),并且基于qt实现打开一个web
  • ¥30 AD9854 为什么输出波形幅度受限,AI机器人勿扰
  • ¥15 如何在ubunto上安装CEF (Chromium Embedded Framework
  • ¥15 数据库原理及应用上机练习题
  • ¥15 如何联系真正的开发者而非公司
  • ¥15 有偿求苍穹外卖环境配置
  • ¥15 代码在keil5里变成了这样怎么办啊,文件图像也变了,