2011-12-28 47 views
0

我的javascript:的jQuery的slideToggle不工作

$("#preview-click").click(function() { 
    $("#preview").slideToggle("fast", function() { 
     $("#preview-pdf").html('<iframe style="width: 100%; height: 500px;" src="http://docs.google.com/gview?url=http://www.example.com/pdf/3.pdf&embedded=true" style="width:718px; height:700px;" frameborder="0"></iframe>'); 
    }); 
}); 

我的HTML:

<a id="preview-click" style="cursor: pointer;">preview</a> 
<div id="preview" class="generic-block-70" style="display: none"> 
    <div id="preview-pdf" class="generic-content-70"> 
    </div> 
</div> 

我试图让div来滑下,然后改变它的内容。如果iframe已经在div中,并且我只是滑动切换,则该框架无法正确显示 - 这就是为什么只有在div可见后才需要生成内容。

上面的解决方案完全不起作用。点击链接时没有任何反应。

我也应该注意到,我有一个以上的$(document).ready()

+0

您需要'返回FALSE;'以防止链接的默认行为。 – 2011-12-28 20:37:25

+0

作品,当我把它放入jsfiddle http://jsfiddle.net/CyCC3/ – 2011-12-28 20:37:33

+0

@DaveKiss,'返回false;'在哪里?在''标签中? – n0pe 2011-12-28 20:38:50

回答

1

在这里,这是您使用文档准备http://jsfiddle.net/CyCC3/

$(document).ready(function() { 

$("#preview-click").click(function() { 
    $("#preview").slideToggle("fast", function() { 
     $("#preview-pdf").html('<iframe style="width: 100%; height: 500px;" src="http://docs.google.com/gview?url=http://www.example.com/pdf/3.pdf&embedded=true" style="width:718px; height:700px;" frameborder="0"></iframe>'); 
    }); 
}); 

}); 
+0

是的,我在那个页面上有2个'document.ready'。我读过,有不止一个是正确的,对吗? – n0pe 2011-12-28 20:41:34

1
$("#preview-click").click(function() { 
    $("#preview").slideToggle("fast", function() { 
     $("#preview-pdf").html('<iframe style="width: 100%; height: 500px;" src="http://docs.google.com/gview?url=http://www.example.com/pdf/3.pdf&embedded=true" style="width:718px; height:700px;" frameborder="0"></iframe>'); 
    }); 
    return false; 
}); 
+0

这不是他的问题的解决方案,不幸的是它没有返回false,如http://jsfiddle.net/CyCC3/ – 2011-12-28 20:41:15

1
$("#preview-click").click(function() { 
    $("#preview").slideToggle("fast", function() { 
     $("#preview-pdf").html('<iframe style="width: 100%; height: 500px;" src="http://docs.google.com/gview?url=http://www.example.com/pdf/3.pdf&embedded=true" style="width:718px; height:700px;" frameborder="0"></iframe>'); 
    }); 
    return FALSE; 
}); 
1

在我的情况适用于我的JS小提琴罚款, SlideToggle在我的iframe中部分工作,但它留下了空白区域,我仍然找到如何解决这个问题的答案。

我的JS

$(document.myform).ready(function() { 
     $('div.demo:eq(0)> div#headerview').click(function() { 
     $(this).next().slideToggle('20'); 
    }); 
    }); 

我的HTML

<div class="demo"> 
<div id="headerview" style="cursor:pointer;">SlideStarts</div> 
    <table> 
     <tr> 
      <td></td> 
     </tr> 
    </table> 
</div> 

我试图改变iframe高度时上下滑动,但看起来还是愚蠢。

相关问题