Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使用jquery随机删除变量?_Javascript_Jquery - Fatal编程技术网

Javascript 如何使用jquery随机删除变量?

Javascript 如何使用jquery随机删除变量?,javascript,jquery,Javascript,Jquery,我试图找到一种使用jquery从web上的某些div中删除变量的方法。这不涉及使用数组。如果我可以使用fadeIn或search and remove这样做,那就更好了 var something = '#img' + count; 在web上,随着时间的推移,将使用setTimeout将图像添加到div中。这些图像已经被分配给变量,我需要找到一种方法将其从web上的某些div中删除。它可以隐藏,删除,无论什么,它必须从用户的视野中随机消失,无论是时间还是哪个图像将消失 谢谢你的帮助和你的时间

我试图找到一种使用jquery从web上的某些div中删除变量的方法。这不涉及使用数组。如果我可以使用fadeIn或search and remove这样做,那就更好了

var something = '#img' + count;
在web上,随着时间的推移,将使用setTimeout将图像添加到div中。这些图像已经被分配给变量,我需要找到一种方法将其从web上的某些div中删除。它可以隐藏,删除,无论什么,它必须从用户的视野中随机消失,无论是时间还是哪个图像将消失

谢谢你的帮助和你的时间提前

我的功能代码:

var count = 0;

function foo() {
  var xPos = xPosition();
  var yPos = yPosition();
  var someTime;

  $("div").append('<img id="Img" ' + count + ' src = "img.png" style="top:' + yPos + 'px; left: ' + xPos + 'px; " />');
  var something = "#Img" + count;
  someTime = setTimeout('foo()', randInterval());
  $(something).hide();
  count++;

  if (timeRemaining == 0) {
    clearTimeout(someTime);
    return;
  }

请永远不要在id后面加上数字,然后拼凑出物品的编号名称。这是无法维护和糟糕的。使用类

通过向元素添加类名,为元素指定用途或功能。如果您想向元素添加信息,那么最好在属性名上使用data-prefix,这是完全合法的。数据itemid就是一个例子

您可以使用var thats=$'查询匹配的元素。该类名已存储以供重用。从那里,您可以使用thats.eq0通过thats.eqx.length-1访问各个元素。例如,如果您不知何故知道第三个需要删除,那么那些.eq3.remove;。如果您希望通过它们进行选择,并且只选择与条件匹配的元素,请使用thats.filtercallback.remove,其中,如果应该删除此引用的元素,则回调将返回true。如果您想使用另一个选择器筛选这些内容,.filter也将接受一个选择器


这就是你的意思吗?

请永远不要在id后面加上数字,然后拼凑出物品的编号名称。这是无法维护和糟糕的。使用类

通过向元素添加类名,为元素指定用途或功能。如果您想向元素添加信息,那么最好在属性名上使用data-prefix,这是完全合法的。数据itemid就是一个例子

您可以使用var thats=$'查询匹配的元素。该类名已存储以供重用。从那里,您可以使用thats.eq0通过thats.eqx.length-1访问各个元素。例如,如果您不知何故知道第三个需要删除,那么那些.eq3.remove;。如果您希望通过它们进行选择,并且只选择与条件匹配的元素,请使用thats.filtercallback.remove,其中,如果应该删除此引用的元素,则回调将返回true。如果您想使用另一个选择器筛选这些内容,.filter也将接受一个选择器


这就是你的意思吗?

给所有图片上一堂课。然后,您可以使用$.class.length获取图像的数量,在此范围内选择一个随机数,然后使用.eq删除该元素


在我的代码中,我使用单独的计时器来添加和删除图像。如果愿意,您可以从removeImage中删除setTimeout,只需从addImage调用它,这样每当添加新图像时,它都会删除图像。

为所有图像设置一个类。然后,您可以使用$.class.length获取图像的数量,在此范围内选择一个随机数,然后使用.eq删除该元素


在我的代码中,我使用单独的计时器来添加和删除图像。如果愿意,您可以从removeImage中删除setTimeout,然后从addImage中调用它,这样每当添加新图像时,它都会删除图像。

不会$something.hide做您想做的事吗?我想是的,但是缺少了其他一些东西,它不起作用。隐藏不起任何作用。你需要显示你的代码,我们无法猜测你做错了什么。添加了函数。抱歉,这是一个非常庞大的游戏代码。在这里发布代码,而不仅仅是一个小提琴链接。不是$something.hide做你想做的吗?我想是的,但是缺少了一些其他东西,它不起作用。隐藏不起任何作用。你需要显示你的代码,我们无法猜测你做错了什么。添加了函数。抱歉,这是一个非常庞大的游戏代码。请在这里发布代码,而不仅仅是一个小提琴链接。如果我给你带来困惑,我很抱歉。我不能使用eq的原因是我无法获得索引号。每隔2秒就会添加一些内容,我猜不出哪个数字会被删除。我不能用课堂来做这件事,但谢谢你让我知道。如果我给你带来困惑,我很抱歉。我不能使用eq的原因是我无法获得索引号。每隔2秒就会添加一些内容,我猜不出哪个数字会被删除。这次我不能上课了,但谢谢你让我知道。我真的很感谢你花时间和帮助。谢谢我真的很感谢你花时间和帮助。谢谢
function addImage() {
    var xPos = xPosition();
    var yPos = yPosition();
    $("div").append($("<img>", {
        src: "img.png",
        "class": "imageclass",
        style: {
            top: yPos+"px",
            left: xPos+"px"
        }
    }));
    setTimeout(addImage, randInterval());
}
setTimeout(addImage, randInterval());

function removeImage() {
    var images = $(".imageclass");
    if (images.length) {
        var rand = Math.floor(Math.random() * images.length);
        images.eq(rand).remove();
    }
    setTimeout(removeImage, randInterval());
}
setTimeout(removeImage, randInterval());