我有一個動態顯示或隱藏的div。當div第一次顯示時,我想要執行一些函數。讓我知道如何做到這一點。任何方法像onshow()爲div
<div id="firstDiv"></div>
<div id="secondDiv"></div>
所以當$('#secondDiv").show();
我想執行的一些功能。
我該怎麼做?
我有一個動態顯示或隱藏的div。當div第一次顯示時,我想要執行一些函數。讓我知道如何做到這一點。任何方法像onshow()爲div
<div id="firstDiv"></div>
<div id="secondDiv"></div>
所以當$('#secondDiv").show();
我想執行的一些功能。
我該怎麼做?
您可以到show
功能,這將完成後的show
執行提供一個回調函數:
$("#secondDiv").show(function() {
//Do something
});
正如評論所說,這將表現爲一個動畫。如果您想show
的行爲與正常行爲相同(即該元素即時顯示且不顯示動畫),則需要爲show
函數提供持續時間參數0。差異在this fiddle中得到證明。
值得一提的是'$(「#secondDiv」)。 show([callback])'本質上是調用等價於$(「#secondDiv」)的動畫效果。show(400,[callback])'其中'400'是動畫的默認持續時間(以毫秒爲單位)。除非你想保持一個動畫效果,否則''('#secondDiv「)。show(0,[callback])''可以考慮'0'。 – MikeM 2011-06-16 14:26:04
是的,非常好的一點。我已經更新了答案並提供了一個鏈接來證明差異。 – 2011-06-16 14:37:13
順便說一句如何添加動畫?我也有Jquery UI插件。 – user695663 2011-06-17 13:46:04
看到這個答案http://stackoverflow.com/questions/1432111/how-to-write-onshow-event-using-javascript-jquery/6244083#6244083 – 2011-06-16 14:12:01