jQuery hide / show div在Opera和Chrome中运行但不在IE / Firefox中运行

时间:2010-03-08 18:10:23

标签: jquery firefox internet-explorer

嘿伙计们,以下jQuery代码片段似乎在Google Chrome和Opera中运行良好,但是当我尝试在Internet Explorer或Firefox中隐藏/显示相关div时没有任何反应。有什么想法吗?

$(function() {
  $(".paste-meta-small .right a.collapse").click(function(event) {
    $(this).parents(".paste-meta-small").next(".highlight").toggle(500);
    $(this).text($(this).text() == 'show' ? 'hide' : 'show');
    event.preventDefault();
  })
})

$(function() {
  $(".highlight-meta a.blog-collapse").click(function(event) {
    $(this).parents(".highlight-meta").next(".blog-highlight").toggle(500);
    $(this).text($(this).text() == 'show' ? 'hide' : 'show');
    var margin = ($(this).text() == "show" ? "15px" : "0");
    $(this).parents(".highlight-meta").css("margin-bottom", margin);   
    event.preventDefault();
  })
})

可以找到一个工作示例here

提前致谢

1 个答案:

答案 0 :(得分:1)

您的问题出在脚本标签顶部:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js" />
<script src="/js/injekt.js" type="text/javascript"></script>

第二个标记未在其他浏览器中加载,<script>标记始终需要结束标记,它们无法自动关闭:

<script></script> //Valid
<script /> //Invalid

将第一个标记更改为此标记以使其正常工作:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>