Jquery .append() 模式视图的问题

发布于 2024-10-06 06:13:42 字数 362 浏览 4 评论 0原文

我创建了简单的模态视图照片库,它可以在用户单击的位置获取图片并在模态视图中显示它。它可以工作,但如果用户在模型视图打开时单击 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 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

不必了 2024-10-13 06:13:42

使用 .empty() 首先或 .html() 替换它:

$('.popup_block').find('div#userPhoto').html($theImage.clone());

对于那些仔细观察的人来说,这不是它看起来的样子,.html(真正发生了什么) 上面是一个快捷方式

$('.popup_block').find('div#userPhoto').empty().append($theImage.clone());

Instead of .append() which appends content, use .empty() first or .html() which replaces it:

$('.popup_block').find('div#userPhoto').html($theImage.clone());

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:

$('.popup_block').find('div#userPhoto').empty().append($theImage.clone());
请爱~陌生人 2024-10-13 06:13:42

您是否尝试过解除绑定

unbind 放入 loading() 函数中,以便连续的单击不会调用该过程。 -

$("#element").unbind('click'); 

其中#element是您调用bind()的元素的标识符

Have you tried unbind?

Put an unbind inside the loading() function so that successive clicks don't invoke the process. -

$("#element").unbind('click'); 

Where #element is the identifier of the element on which you are calling the bind()

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文