Выезд strptime в время модуль. Это - инверсия strftime.
$ python
>>> import time
>>> time.strptime('Jun 1 2005 1:33PM', '%b %d %Y %I:%M%p')
time.struct_time(tm_year=2005, tm_mon=6, tm_mday=1,
tm_hour=13, tm_min=33, tm_sec=0,
tm_wday=2, tm_yday=152, tm_isdst=-1)
Вы всегда можете добавить к исходному методу .show () , поэтому вам не нужно запускать события каждый раз, когда вы что-то показываете или если вам это нужно для работы с устаревшим кодом:
jQuery(function($) {
var _oldShow = $.fn.show;
$.fn.show = function(speed, oldCallback) {
return $(this).each(function() {
var obj = $(this),
newCallback = function() {
if ($.isFunction(oldCallback)) {
oldCallback.apply(obj);
}
obj.trigger('afterShow');
};
// you can trigger a before show if you want
obj.trigger('beforeShow');
// now use the old function to show the element passing the new callback
_oldShow.apply(obj, [speed, newCallback]);
});
}
});
jQuery(function($) {
$('#test')
.bind('beforeShow', function() {
alert('beforeShow');
})
.bind('afterShow', function() {
alert('afterShow');
})
.show(1000, function() {
alert('in show callback');
})
.show();
});
Это эффективно позволяет вам делать что-то beforeShow и afterShow, сохраняя нормальное поведение исходного метода .show ().
Вы также можете создать другой метод, чтобы вам не приходилось переопределять исходный .show ( ) метод.
Нет собственного события, к которому вы могли бы подключиться для этого, однако вы можете инициировать событие из своего скрипта после того, как сделаете div видимым с помощью функции. trigger
например
//declare event to run when div is visible
function isVisible(){
//do something
}
//hookup the event
$('#someDivId').bind('isVisible', isVisible);
//show div and trigger custom event in callback when div is visible
$('#someDivId').show('slow', function(){
$(this).trigger('isVisible');
});
Решение красного квадрата - правильный ответ.
Но в качестве решения В ТЕОРИИ вы можете написать функцию, которая выбирает элементы, классифицируемые как .visibilityCheck
( не все видимые элементы ) и проверять значение их свойства видимость
; если истина
, то сделайте что-нибудь.
После этого функцию следует периодически выполнять с помощью функции setInterval ()
. Вы можете остановить таймер с помощью clearInterval ()
после успешного вызова.
Вот пример:
function foo() {
$('.visibilityCheck').each(function() {
if ($(this).is(':visible')){
// do something
}
});
}
window.setInterval(foo, 100);
Вы также можете улучшить его производительность, однако решение в основном абсурдно. использоваться в действии. Итак ...