Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.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 使用Ajax请求突出显示图像边框_Javascript_Jquery_Image - Fatal编程技术网

Javascript 使用Ajax请求突出显示图像边框

Javascript 使用Ajax请求突出显示图像边框,javascript,jquery,image,Javascript,Jquery,Image,首先,代码的一些可视化。 我有以下从jquery动态生成的图像。它们是根据用户要求制作的: <img id="i13133" src="someimage.jpg" /> <img id="i13232" src="someimage1.jpg" /> <img id="i14432" src="someimage2.jpg" /> <img id="i16432" src="someimage3.jpg" /> <img id="i1842

首先,代码的一些可视化。 我有以下从jquery动态生成的图像。它们是根据用户要求制作的:

<img id="i13133" src="someimage.jpg" />
<img id="i13232" src="someimage1.jpg" />
<img id="i14432" src="someimage2.jpg" />
<img id="i16432" src="someimage3.jpg" />
<img id="i18422" src="someimage4.jpg" />
它工作得很好,即使有多个图像。但我最初是在一张图片上使用这个

问题是我需要打断一下。比如:

$(img).click(function () {
   stop = true;
});
有两个问题:

1.)这显然会停止所有动画。我无法想象我怎么能写出只会停止点击图像动画的东西


2.)Ajax检索ID,有时这些ID每隔几分钟出现一次以上,这意味着如果图像存在,它将重复动画。我可能需要一些帮助来确定如何检测动画是否已经在图像上运行,如果动画已经在图像上触发,则什么也不做。

你可以一石二鸟;)

1) 不要使用
stop
变量。为每个img添加一个类:

// Instead of: var stop = false;
$(pickimage).addClass("animating");

// Instead of: if (!stop) highlight(pickimage);
if ($(pickimage).hasClass("animating")) highlight(pickimage);

// Instead of: $(img).click(function () { stop = true; });
$(img).click(function () { $(this).removeClass("animating"); });
2) 同样的事情,检查课堂

if ($(pickimage).hasClass("animating")) return;

我不敢相信事情竟如此简单。我以前也想过上课,但不知怎么的,我没能把所有的东西都整理好。另外还有人添加了关于使用.live()的评论,这也很有帮助,我在使用动态生成的内容时忘记了使用它。(不知道他为什么擦了他的帖子)非常感谢第九栏!感谢那个提醒我使用.live()的家伙:)
if ($(pickimage).hasClass("animating")) return;