Bu işe yaramazsa
$block.insertAfter(form);
window.setTimeout(function() {
$('.date', $block).datetime({
userLang: 'en',
americanMode: true
});
}, 1000);
datetime()
Ben sınıfa date
ile birlikte bir giriş elemana bağlama am bir eklenti. Açıkçası # 1 çalışmıyor çünkü bu öğe hala DOM'de mevcut değil, 1 saniyelik çalışma bekliyor. Ama bu hacky. JQuery'yi insertAfter()
yöntemi veya başka bir yol için geri arama kabul etmek için nasıl uzatabilirim?
$(function() {
$block.insertAfter(form);
$('.date', $block).datetime({
userLang: 'en',
americanMode: true
});
});
Ve bu tarih saat kütüphane yüklenir sonra oluşur emin olun:
'.promise' ve [' .done'] (http://api.jquery.com/deferred.done/) –
Peki ya ilk olarak .datetime() ve sonra insertAfter()? DOM'den ayrılmış formu oluşturun, sonra datetime öğesini çağırın ve DOM'a ekleyin. –
# 1 nasıl çalışmıyor? Eklendiğinde DOM'da mevcut olmalıdır. 'insertAfter' senkronize, böylece' form'dan sonra '$ block' ekledikten sonra kullanılabilir. Ve .datetime yöntemini çalıştırdıktan sonra yeterli olması gerekir. 1 saniye beklemek (veya herhangi bir zaman) önemli olmamalıdır. Bir şey mi eksik? Ya ne $ block.insertAfter (form) .find ('. Date') kullanılırsa? Datetime ({}); '? Form nedir? Dinamik olarak oluşturulmuş bir jQuery nesnesine bir başvuru olup olmadığını merak ediyorum ('$ ("