我有这段jquery代码。想法是在点击div1时显示div2,反之亦然。我正在缓慢加载div。我看到一些非常奇怪的东西。在加载div的动画发生之前,用户点击两次,两个div显示在页面上。在jquery中是否有一种方法可以确保页面加载,然后如果单击则显示div2。我想一次显示一个div。
$(function () {
$('#div1').click(function () {
$('#div1').hide();
$('#div2').show(3000);
});
$('#div2').click(function () {
$('#div2').hide();
$('#div1').each(function()
{
if($(this).html()!='')
$(this).show(3000);
});
});
});
答案 0 :(得分:1)
您可以在调用hide
之前尝试清除动画队列。
$(function () {
$('#div1').click(function () {
$('#div1').stop(true).hide();
$('#div2').show(3000);
});
$('#div2').click(function () {
$('#div2').stop(true).hide();
$('#div1').each(function()
{
if($(this).html()!='')
$(this).show(3000);
});
});
});
答案 1 :(得分:0)
代码是正确的,但在回调中显示div。 例如:
$('#div1').click(function () {
$('#div1').hide(100, function() {
$('#div2').show(3000);
});
});
您可以发布您网页的链接吗?也许取决于CSS。