我希望在div显示(显示之后)时调用一个函数。
有谁知道我怎么能这样做?我尝试使用类似的东西:
$(#someDiv).bind('show',function(){
alert('example')
});
但我不确定我是否以正确的方式做到这一点,或者是否有可能实现这一目标。有什么想法吗?
答案 0 :(得分:17)
以下代码(改编自http://maximeparmentier.com/2012/11/06/bind-show-hide-events-with-jquery/)可让您使用$('#someDiv').on('show', someFunc);
。
(function ($) {
$.each(['show', 'hide'], function (i, ev) {
var el = $.fn[ev];
$.fn[ev] = function () {
this.trigger(ev);
el.apply(this, arguments);
return el;
};
});
})(jQuery);
答案 1 :(得分:3)
必须在show()方法中,在其回调后:
$('#someDiv').show('slide',function(){
alert('example')
});
答案 2 :(得分:1)
<script type="text/javascript" src="jquery-1.8.0.min.js"></script>
<script>
$(document).ready(function(){
$("#jq_message").show(function(){
$("#jq_message").fadeOut(3000);
$("#div2").fadeOut("slow");
$("#div3").fadeOut(3000);
});
});
</script>
<div id="jq_message">
</div>
答案 3 :(得分:0)
$('#element').live('show', function(){
// CODE
});
答案 4 :(得分:0)
从jQuery 1.7开始, .live()方法已弃用。使用.on()附加事件处理程序。旧版jQuery的用户应该使用.delegate()而不是.live()。
答案 5 :(得分:0)
我用这个
$(document).on("pagebeforeshow", "#elementID", function ()
{
//Whatever
});
答案 6 :(得分:-1)
试试这个
$(#someDiv).bind('show',function(){
callFunction();
});
或
$(#someDiv).on('show',function(){
callFunction();
});
function callFunction() { ............ }