Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.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 如何正确打开img?_Javascript_Jquery_Jquery Animate - Fatal编程技术网

Javascript 如何正确打开img?

Javascript 如何正确打开img?,javascript,jquery,jquery-animate,Javascript,Jquery,Jquery Animate,我知道unwrap(),但是,我似乎无法让它工作 我双击一个img。它用一个div包装,并在包装内的img上方插入一个div。这是为了制作动画。前置的div移动 我需要这一切撤销后,动画完成。目前,我有一个子句,其中如果再次双击img,动画div将被删除,但包装器仍然保留 这是我的密码: $("#L .A, .B").live('dblclick', function(event) { if (event.type === 'dblclick') { if ($(this).hasC

我知道
unwrap()
,但是,我似乎无法让它工作

我双击一个
img
。它用一个div包装,并在包装内的
img
上方插入一个div。这是为了制作动画。前置的
div
移动

我需要这一切撤销后,动画完成。目前,我有一个子句,其中如果再次双击
img
,动画
div
将被删除,但包装器仍然保留

这是我的密码:

$("#L .A, .B").live('dblclick', function(event) {
  if (event.type === 'dblclick') {
    if ($(this).hasClass('R')) {
      $('#Box').find('.M').remove();
    } else {
      $(this).wrap('<div class="MContain" />');
      $(this).parent().prepend('<div class="M" />');
      $(".M").stop().animate({
        marginTop: '-5px'
      }, 400).animate({
        opacity: '0'
      }, 400);
    }
    $(this).toggleClass('R');
    $('.MContain').children().unwrap();
  }
});
$(“#L.A.B”).live('dblclick',函数(事件){
如果(event.type=='dblclick'){
if($(this).hasClass('R')){
$('#Box')。查找('.M')。删除();
}否则{
$(此).wrap(“”);
$(this.parent().prepend(“”);
$(“.M”).stop().animate({
marginTop:“-5px”
}制作动画({
不透明度:“0”
}, 400);
}
$(this.toggleClass('R');
$('.MContain').children().unwrap();
}
});

@Peeter;queue对于移除动画div很有用,但是我仍然很难打开img。我尝试从.M中展开,因为它的父对象与img相同,但也没有成功。您能否在jsfiddle.net中复制它,这样我就可以了解您试图实现的目标。@Peeter我没有完全修复它,但我添加了一个if子句,检查img是否已被包装。如果不是,那就把它包起来。我对此很满意,因为这对我在其他地方很有用。谢谢你的帮助!
$(".M").stop().animate({
    marginTop: '-5px'
}, 400).animate({
    opacity: '0'
}, 400).queue(function() {
    //This will be ran after the animation is done, add your code here.
});