使用JQuery更改div宽度时出现问题

使用JQuery更改div宽度时出现问题,jquery,css,html,Jquery,Css,Html,所以我希望能够每秒更改一个divs的宽度,但是我当前使用的代码似乎不起作用 <script type="text/javascript"> $("#progress").css("width", "55%"); </script> <div id="progress"></div> 任何帮助都将不胜感激。将您的代码包装在文档就绪处理程序中 $(function(){ $("#progress").css("width",

所以我希望能够每秒更改一个divs的宽度,但是我当前使用的代码似乎不起作用

<script type="text/javascript">

    $("#progress").css("width", "55%");

</script>

<div id="progress"></div>

任何帮助都将不胜感激。

将您的代码包装在文档就绪处理程序中

 $(function(){
    $("#progress").css("width", "55%");
 });

将代码包装到文档就绪处理程序中

 $(function(){
    $("#progress").css("width", "55%");
 });

我不确定如何/在何处执行jQuery代码。如果它真的如您指定的那样,那么在它执行时,您的div还不存在。相反,请在加载文档后尝试执行它:

$(document).ready(function() {
    $("#progress").css("width", "55%");
});

我不确定如何/在何处执行jQuery代码。如果它真的如您指定的那样,那么在它执行时,您的div还不存在。相反,请在加载文档后尝试执行它:

$(document).ready(function() {
    $("#progress").css("width", "55%");
});

您也可以将该代码用于onload函数,或者像其他朋友所评论的那样使用ready处理程序

Html:


您也可以将该代码用于onload函数,或者像其他朋友所评论的那样使用ready处理程序

Html:

有两种解决方案

  • 使用函数
  • 加载html后放入JavaScript 代码:

     $(function (){
         $("#progress").css("width", "55%");
     });
    
    您的解决方案不起作用,因为有时元素未加载,因此无法更改。Document.ready在加载整个文档时执行。当代码处于就绪状态事件被执行时,您可以确保每个html元素都已加载

    要每秒更改代码,需要使用setInterval函数

     setInterval(function() {
      // Do something every 1 second
     }, 1000);
    
    每秒钟更换一次+5px的示例

    $(function (){
    
         var counter = 1;
         setInterval(function() {
          counter = (counter + 5) % 100;
          $("#progress").css("width", counter + "%");
         }, 1000);
     });
    
    有两种解决方案

  • 使用函数
  • 加载html后放入JavaScript 代码:

     $(function (){
         $("#progress").css("width", "55%");
     });
    
    您的解决方案不起作用,因为有时元素未加载,因此无法更改。Document.ready在加载整个文档时执行。当代码处于就绪状态事件被执行时,您可以确保每个html元素都已加载

    要每秒更改代码,需要使用setInterval函数

     setInterval(function() {
      // Do something every 1 second
     }, 1000);
    
    每秒钟更换一次+5px的示例

    $(function (){
    
         var counter = 1;
         setInterval(function() {
          counter = (counter + 5) % 100;
          $("#progress").css("width", counter + "%");
         }, 1000);
     });
    

    获取当前宽度并更新它,然后使用
    setInterval
    clearInterval

    请参阅以下答案:

    我还建议,如果它适合你

    <script>
      $(function() {
        var progressbar = $( "#progressbar" ),
          progressLabel = $( ".progress-label" );
    
        progressbar.progressbar({
          value: false,
          change: function() {
            progressLabel.text( progressbar.progressbar( "value" ) + "%" );
          },
          complete: function() {
            progressLabel.text( "Complete!" );
          }
        });
    
        function progress() {
          var val = progressbar.progressbar( "value" ) || 0;
    
          progressbar.progressbar( "value", val + 1 );
    
          if ( val < 99 ) {
            setTimeout( progress, 100 );
          }
        }
    
        setTimeout( progress, 3000 );
      });
      </script>
    
    
    $(函数(){
    var progressbar=$(“#progressbar”),
    progressLabel=$(“.progressLabel”);
    progressbar.progressbar({
    值:false,
    更改:函数(){
    progressLabel.text(progressbar.progressbar(“值”)+“%”);
    },
    完成:函数(){
    progressLabel.text(“完成!”);
    }
    });
    功能进展(){
    var val=progressbar.progressbar(“值”)|| 0;
    progressbar.progressbar(“值”,val+1);
    如果(val<99){
    设置超时(进度,100);
    }
    }
    设置超时(进度,3000);
    });
    
    获取当前宽度并更新它,然后使用
    setInterval
    clearInterval

    请参阅以下答案:

    我还建议,如果它适合你

    <script>
      $(function() {
        var progressbar = $( "#progressbar" ),
          progressLabel = $( ".progress-label" );
    
        progressbar.progressbar({
          value: false,
          change: function() {
            progressLabel.text( progressbar.progressbar( "value" ) + "%" );
          },
          complete: function() {
            progressLabel.text( "Complete!" );
          }
        });
    
        function progress() {
          var val = progressbar.progressbar( "value" ) || 0;
    
          progressbar.progressbar( "value", val + 1 );
    
          if ( val < 99 ) {
            setTimeout( progress, 100 );
          }
        }
    
        setTimeout( progress, 3000 );
      });
      </script>
    
    
    $(函数(){
    var progressbar=$(“#progressbar”),
    progressLabel=$(“.progressLabel”);
    progressbar.progressbar({
    值:false,
    更改:函数(){
    progressLabel.text(progressbar.progressbar(“值”)+“%”);
    },
    完成:函数(){
    progressLabel.text(“完成!”);
    }
    });
    功能进展(){
    var val=progressbar.progressbar(“值”)|| 0;
    progressbar.progressbar(“值”,val+1);
    如果(val<99){
    设置超时(进度,100);
    }
    }
    设置超时(进度,3000);
    });
    
    如果我正确理解了问题,那么答案是添加:

    显示:内联到ID#进度


    希望能有所帮助。

    如果我正确理解了问题,那么答案是添加:

    显示:内联到ID#进度


    希望有帮助。

    这可能是解决方案:(它在100停止,但您可以调整)

    HTML

    
    
    JS

    功能进度(速度){
    setInterval(函数(){
    $(“#进度”)。设置动画({
    宽度:“+=”+速度
    });
    如果($(“#进度”)。宽度<100){
    进度(速度);
    }
    }, 1000);
    }
    进展(1);
    
    这可能是解决方案:(它在100停止,但您可以调整它)

    HTML

    
    
    JS

    功能进度(速度){
    setInterval(函数(){
    $(“#进度”)。设置动画({
    宽度:“+=”+速度
    });
    如果($(“#进度”)。宽度<100){
    进度(速度);
    }
    }, 1000);
    }
    进展(1);
    
    哪个代码部分将每秒更改宽度?setInterval()阅读它哪个代码部分将每秒更改宽度?setInterval()阅读它