jquery - 在 jQuery 中添加/删除的最有效方法

标签 jquery performance append

这个想法是创建一个进度条,但带有句号“.”。所以在 div 中,有一个“.”每 500 毫秒就会追加一次,我想做的是,如果 div 的长度(即“.”的数量)大于 3,则开始删除一个“.”。一次,然后在 0 时再次启动该过程:

            setInterval(function() {
                  $("#load").append(".");
                  var length;
                  $('#load').each(function(){  
                    length = $("#load").val().length;
                  });
                  if (length > 3){
                    $("#load").remove(".");
                  }
            }, 500);

最佳答案

我认为效率在这里不是问题。

不过,还有一些问题需要解决:

  1. .val() 仅适用于表单输入 - 对于您想要 .text() 的 div。
  2. 我认为只有一个 ID 为“load”的 div。如果有更多,则应使用类而不是 ID,如果没有,则不需要 .each()

最后,我会这样做:

var count = 0, dots = '...';
setInterval(function () {
    var len = Math.abs(count++ % 6 - 3); // Gives only 3, 2, 1, 0, 1, 2, 3, ...
    $('#load').text(dots.substring(0, 3 - len));
}, 500);

在此处查看演示:http://jsfiddle.net/Xp77Q/3/

关于jquery - 在 jQuery 中添加/删除的最有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4814616/

相关文章:

Jquery .keypress 动态添加的输入

jquery - 我想获取每个 <td><button></td> 的值。这是我到目前为止的代码

jquery - (ruby on Rails)服务器数据更新后,如何使用 jquery/ajax 以最快的方式从部分加载/显示特定 div?

javascript - 为什么append()没有将自身 append 到div,而是 append 到标题h2

objective-c - 使用 Objective-C 写入 XML 文件

javascript - 将元素作为变量传递给函数

javascript - 确定新数据是否可用的最佳方法

Mysql SELECT查询及性能

java - Java 中使用的最快且内存效率最高的 BZip2 解压工具是什么

javascript - 窗口间隔 - 检查页面上的元素然后 append 到它