不知道这是可能的,但你可以加载和卸载到jQuery的切换div?Jquery加载到切换开关
有点像这样?
$("#IDOFCLICK").live('click',function(){
$(this).toggleClass("active").('#IDOFDIVTOLOAD').load('PAAGETOLOAD').slideToggle("slow");
});
如果我能猜到上面是不正确的,但是,你会怎么也卸载的“反向”切换?
不知道这是可能的,但你可以加载和卸载到jQuery的切换div?Jquery加载到切换开关
有点像这样?
$("#IDOFCLICK").live('click',function(){
$(this).toggleClass("active").('#IDOFDIVTOLOAD').load('PAAGETOLOAD').slideToggle("slow");
});
如果我能猜到上面是不正确的,但是,你会怎么也卸载的“反向”切换?
这是行不通的。您正在使用的toggle
只是切换课程。有一个toggle
事件可以使用,但据我所知live()
不支持。
当你说unload
我假设你想清空#IDOFDIVTOLOAD
的内容。如果这是正确的,你可以试试这个:
$("#IDOFCLICK").live('click',function(){
$(this).toggleClass("active");
var $loadElement = $('#IDOFDIVTOLOAD');
if($loadElement.is(':empty')) {
$loadElement.load('PAAGETOLOAD').slideToggle("slow");
} else {
$loadElement.empty().slideToggle("slow");
}
});
jQuery的文档:
.is()
- http://api.jquery.com/is/.empty()
- http://api.jquery.com/empty/我碰到这个跑啊w ^当我尝试它时,在加载页面之前发生了一些动画,然后发生切换。我将IF语句中的代码更改为ajax调用,以测试数据是否在slideToggle之前加载。它给了预期的效果。
$.ajax({
type: 'GET',
url: "/pagetoload",
dataType: "html",
success: function(data)
{
$loadElement.html(data);
$loadElement.slideToggle("slow");
},
error: function()
{
alert("Error!");
}
});
感谢帕特里克会放弃它,我知道我的是完全错误的,但我甚至不确定是否可以完成。 – user351657 2010-06-01 11:14:52
听起来不错。请注意,如果在加载之前'#IDOFDIVTOLOAD'内有其他内容,则'.is()'不会正确。如果是这样的话,你需要在'if()'中改变测试。 – user113716 2010-06-01 11:19:00