jQuery css可见性在load方法中不起作用?

时间:2015-04-02 20:24:35

标签: javascript jquery html css

我试图获取一个脚本,以便在点击此div #events时,当前#meet div中的内容会将其可见性更改为隐藏(以便保留空间) )然后使用jquery load方法,将v2.html中的内容加载到#meet div中。但是,现在#meet div消失但新内容不会出现。有什么想法吗?

HTML:

<div id="meet">
........
<div id="exec"></div>
........
</div>

JS:

    $(document).ready(function(){
        $("#exec").click(function(){
            $("#meet").load("execute.html").fadeIn('slow');
        });
        $("#events").click(function() {
            $('#meet').css('visibility','hidden', function() {
               $('#meet').load("ev2.html", function() {
                   $('#meet').css('visibility', 'visible');
               })
            })
        });
    });

2 个答案:

答案 0 :(得分:0)

在JQuery中使用CSS类:addClass(&#34; foo&#34;),其中包含您想要的样式和removeClass(&#34; boo&#34;),其中包含您不想要的样式。

看看这个小提琴jsfiddle.net

$("#navigation").on("click", function(){
     if($(this).hasClass("foo")){
        $(this).removeClass("foo");
        $(this).addClass("boo");  
        $(this).animate({width: 100}, 350);
     } else {
        $(this).removeClass("boo");
        $(this).addClass("foo");  
        $(this).animate({width: 100}, 350);
     }   
});

答案 1 :(得分:0)

.css没有将函数作为第三个参数。它确实将函数作为第二个参数,只有propertyName作为第一个:api.jquery.com/css。尝试删除该函数调用并将$('#meet').load()移至第一个.css调用的正下方。

您也可以链接.css.load函数。

&#13;
&#13;
$(document).ready(function(){
  $("#exec").click(function(){
    $("#meet").load("execute.html").fadeIn('slow');
  });
  $("#events").click(function() {
    $('#meet').css('visibility','hidden').load("ev2.html", function() {
        $('#meet').css('visibility', 'visible');
    });
  });
});
&#13;
&#13;
&#13;