Ответ 1
Как и в jQuery 1.7, метод .live() устарел. Используйте .on() для присоединения обработчиков событий. Пользователи более старых версий jQuery должны использовать .delegate() в предпочтении .live().
Я хочу вызвать функцию, когда div показывает (после шоу).
Кто-нибудь знает, как я могу это сделать? Я пытаюсь использовать что-то вроде этого:
$(#someDiv).bind('show',function(){
alert('example')
});
Но я не уверен, что я сделаю это с правильным путем или если это возможно или не получится. Любые идеи?
Как и в jQuery 1.7, метод .live() устарел. Используйте .on() для присоединения обработчиков событий. Пользователи более старых версий jQuery должны использовать .delegate() в предпочтении .live().
Следующий код (адаптированный из 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);
Это должно быть сделано в методе show() в его post-callback:
$('#someDiv').show('slide',function(){
alert('example')
});
<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>
$('#element').live('show', function(){
// CODE
});
Я использую этот
$(document).on("pagebeforeshow", "#elementID", function ()
{
//Whatever
});
попробуйте это
$(#someDiv).bind('show',function(){
callFunction();
});
или
$(#someDiv).on('show',function(){
callFunction();
});
функция callFunction() { ............ }