5

我想在 div 显示时(显示后)调用一个函数。

有谁知道我该怎么做?我尝试使用类似的东西:

$(#someDiv).bind('show',function(){
    alert('example')
});

但我不确定我是否以正确的方式做到这一点,或者是否有可能实现这一目标。有任何想法吗?

4

7 回答 7

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);
于 2013-10-22T18:41:01.277 回答
6

它必须在 show() 方法的后回调中完成:

$('#someDiv').show('slide',function(){
    alert('example')
});
于 2013-03-05T19:44:54.313 回答
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>   
于 2014-11-20T10:03:04.423 回答
0
$('#element').live('show', function(){
    // CODE
});
于 2013-03-05T19:44:08.043 回答
0

我用这个

$(document).on("pagebeforeshow", "#elementID", function ()
{
    //Whatever
});
于 2017-03-09T23:10:51.100 回答
-1

jQuery 直播

从 jQuery 1.7 开始,不推荐使用 .live() 方法。使用 .on() 附加事件处理程序。旧版本 jQuery 的用户应该使用 .delegate() 而不是 .live()。

于 2013-06-18T16:05:43.710 回答
-2

尝试这个

$(#someDiv).bind('show',function(){
    callFunction();
});

或者

$(#someDiv).on('show',function(){
    callFunction();
});

函数调用函数() { ...... }

于 2013-03-05T19:43:40.093 回答