首页 > 解决方案 > 工作代码不会在 .load() 之后执行,但会执行其他代码?

问题描述

有人可以帮我理解为什么这不起作用吗?之后我的按钮不起作用.load()

对于上下文,我的 HTML 只是一个(#box)带有滚动条和两个按钮的 div,一个用于刷新(#load),一个用于滚动机器人(#scroll)

$(document).ready(function() {
      Ref();
    });

function Ref() {
      $('#load').click(function() {
        $('#box').load('test.php #box', function(r, status){
          if(status == "success"){
            $('#scroll').click(function() {
              $('#box').scrollTop($('#box')[0].scrollHeight);
            });
          }
          else{
            console.log("Error");
          }
        });
      });
    }

标签是正确的,我的.load()功能有效,但之后的代码停止工作。

但是,这确实有效:

function Ref() {
      $('#load').click(function() {
        $('#box').load('test.php #box', function(r, status){
          if(status == "success"){
            console.log("Success");
          }
          else{
            console.log("Error");
          }
        });
      });
    }

On .load(),在日志中收到一条成功消息,暗示我它确实加载成功,但是一旦我输入自己的滚动代码,它就不起作用并且我没有收到任何错误。

我尝试使用 console.log() 对其进行调试,但我没有收到任何有用的信息,而且我还是 jQuery 的新手,所以我不知道我的原始代码发生了什么,因为它在.load()文档之外正常运行告诉我这应该像回调函数一样工作。

标签: javascriptjqueryajax

解决方案


推荐阅读