Jquery 为什么toggle()方法在我的程序中不能正常工作?

Jquery 为什么toggle()方法在我的程序中不能正常工作?,jquery,Jquery,使用下面的代码,我正在显示弹出窗口。我使用了toggle()动画方法。但它只显示一次弹出窗口。原因是什么?我怎样才能解决这个问题 代码: $(document).ready(function() { $(".ishow").click(function() { var info=$(this).attr("id"); var id=info.replace("/",""); var cor=$(".rd

使用下面的代码,我正在显示弹出窗口。我使用了
toggle()
动画方法。但它只显示一次弹出窗口。原因是什么?我怎样才能解决这个问题

代码:

$(document).ready(function()
 {
      $(".ishow").click(function()
      {
           var info=$(this).attr("id");
           var id=info.replace("/","");

           var cor=$(".rd"+id).offset();
           var x=cor.left;
           var y=cor.top;

           $.ajax
           ({
                type:"post",
                url:"roomstaypopup.php",
                data:"id="+info,
                success: function(html)
                {                          
                     $("#popup"+id).css({"display":"block","left":x-51,"top":y+18});
                     $("#popup"+id).toggle();
                     $("#popup"+id).html(html);
                }
           });

      });
 })

我很确定toggle最终会修改displaycss属性。您确定您的.css设置#popup+id不会干扰切换吗

“切换”应在第一次单击时显示,然后在下一次单击时隐藏。但是,如果在触发toggle()之前用CSS显示它,它可能每次都会将其关闭


尝试注释toggle()上方的行。这是我的猜测。

我很确定切换最终会修改displaycss属性。您确定您的.css设置#popup+id不会干扰切换吗

“切换”应在第一次单击时显示,然后在下一次单击时隐藏。但是,如果在触发toggle()之前用CSS显示它,它可能每次都会将其关闭


尝试注释toggle()上方的行。无论如何,这是我的猜测。

您正在将样式设置为“显示”:“block”就在
.toggle()
之前,这意味着
.toggle()
将始终隐藏元素


尝试删除
“显示”:“块”,
。另外,
.toggle()
将不会设置动画,除非您添加像
.toggle(500)这样的持续时间。但出于您的目的,我认为您可能需要使用
.show()而不是
。切换(500)
和put
$(“#popup”+id).html(html)在调用
show()之前
切换()
以确保在动画开始之前插入html。

您正在将样式设置为“显示”:“阻止”就在
.toggle()
之前,这意味着
.toggle()
将始终隐藏元素


尝试删除
“显示”:“块”,
。另外,
.toggle()
将不会设置动画,除非您添加像
.toggle(500)这样的持续时间。但出于您的目的,我认为您可能需要使用
.show()而不是
。切换(500)
和put
$(“#popup”+id).html(html)在调用
show()之前
切换()
以确保在动画开始之前插入html。

切换按您所说的方式工作,因为它只是根据可见性显示或隐藏元素。在您的情况下,您在display=block的元素上调用它,它应该始终将其display设置为none,因此隐藏它

切换就像您所说的那样工作,因为它只是根据is可见性显示或隐藏元素。在您的例子中,您在display=block的元素上调用它,它应该始终将其display设置为none,从而隐藏它

请提供您的html。对于每个
,您确实有一个单独的
#popupX
元素。ishow
元素?还有,为什么要切换
?您正在设置
display:block
,然后调用
toggle
,它应该隐藏元素,而元素似乎不是您想要的。请提供html。您确实为每个
都有一个单独的
#popupX
元素。ishow
元素?还有,为什么要切换
?您正在设置
display:block
,然后调用
toggle
,它应该隐藏元素,而元素似乎不是您想要的。@hearman如果问题已经解决,请确保接受此答案。:-)@如果这个答案解决了你的问题,请务必接受它。:-)