Jquery .append() 模式视图的问题
我创建了简单的模态视图照片库,它可以在用户单击的位置获取图片并在模态视图中显示它。它可以工作,但如果用户在模型视图打开时单击 2 或 5 次,然后在模态视图中显示 2 或 5 个相同的图像,则会出现问题。我用过类似
$('.popup_block').find('div#userPhoto').append($theImage.clone());
我怎样才能限制它?
这是我捕获用户点击操作的函数。加载创建模态视图等功能,需要2-3秒
$(this).bind('click',function(){
var $this=$(this);
loading($this);
});
I created simple modal view photo gallery that gets picture where user clicked and shows it in modal view.It works but problem if user clicked 2 or 5 times while model view opens then it shows 2 or 5 the same images in modal view. I used like
$('.popup_block').find('div#userPhoto').append($theImage.clone());
How can I limit it ?
Here is my function that catch user click action. Loading function that creates modal view and so on.And it takes 2-3 seccond
$(this).bind('click',function(){
var $this=$(this);
loading($this);
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用
.empty()
首先或.html()
替换它:对于那些仔细观察的人来说,这不是它看起来的样子,
.html(真正发生了什么)
上面是一个快捷方式:Instead of
.append()
which appends content, use.empty()
first or.html()
which replaces it:For those doing a double take, this isn't what it looks like, what's really happening with
.html()
above is a shortcut for this:您是否尝试过
解除绑定
?将
unbind
放入loading()
函数中,以便连续的单击不会调用该过程。 -其中
#element
是您调用bind()
的元素的标识符Have you tried
unbind
?Put an
unbind
inside theloading()
function so that successive clicks don't invoke the process. -Where
#element
is the identifier of the element on which you are calling thebind()