Gab*_*ias 5 html javascript jquery
我已经注意到了这一点,但它终于开始让我烦恼(原谅双关语).当我html()与其他函数链接时,似乎html()无论如何先运行.例如:
$("#news .inner").hide("slide", { direction: strOpposite }, 500).delay(1000).html(strData).show("slide", { direction: strDirection }, 500);
Run Code Online (Sandbox Code Playgroud)
即使delay()如图所示添加它似乎也无法解决问题.此行是我为网站的新闻档案部分实施的页面翻转效果的一部分.有任何想法吗?谢谢.
当您将许多方法链接在一起时,它们将按照链接的顺序执行,但动画方法会添加到动画队列中,并且实际的动画稍后发生(按顺序)。
据我了解,该.delay()方法只会延迟动画队列中的内容。该.html()方法不是动画的东西。
如果您希望在方法完成.html()后进行调用,那么您应该将其放入该方法.hide()提供的完整回调中。.hide()
所以,假设你想隐藏,然后改变html,然后显示,你可以这样做:
$("#news .inner").hide("slide", { direction: strOpposite }, 500,
function() { $(this).html(strData); })
.show("slide", { direction: strDirection }, 500);
Run Code Online (Sandbox Code Playgroud)
演示: http: //jsfiddle.net/BnFyb/