Sitemde, sayfa yüklendikten sonra başka bir (güvenli) sunucudan verileri alan bir jquery işlevi var. Bir jsonp çağrısı kullanarak Şu anda belge hazır olaydan sonra bu verileri yüklemek: Yukarıdaki çağrısı hakkında sevmiyorum NeJQuery'in belge hazır olayı kullanılarak yüklenmediğini sınayın.
<script type="text/javascript">
$(document).ready(function() {
$.getJSON(_secureHost + '/base/members/current.aspx?callback=?', function (data) {
initPage(data);
});
});
</script>
, jsonp aslında bu suretle yavaşlatarak, belge hazır olaydan önce exectued edilebilmesidir sayfa yükleme Ben sayfanın içine jquery (yani komut dosyası etiketi kullanarak başvurmuyor) dahil, o zaman aşağıdaki kod sayfaların daha hızlı yüklenmesi harika çalışıyor ve: Her sayfada jquery dahil
<script type="text/javascript">
$.getJSON(_secureHost + '/base/members/current.aspx?callback=?', function (data) {
$(document).ready(function() {
initPage(data);
});
});
</script>
Ama ben bir 23k havai olduğunu d önlemek ister. Jquery yüklenip yüklenmediğini ve jquery yüklendiğinde sadece initPage() işlevini beklemeyi nasıl test edebilirim?
Düzenleme: Sonra exectue olayı jquery yüklü ise tekrar tekrar kontrol etmek ve ihtiyaç daha kesin olmak gerekirse. Ben jquery kontrolü yaptığında bir preinit oluşturduk : Bir zamanlayıcı işi
Çözüm .. çözüm olabilir. Sayfam yüklemesi daha hızlı olamazdı :). Herkese teşekkürler!
function preInit()
{
// wait until jquery is loeaded
if (!(typeof jQuery === 'function')) {
window.setTimeout(function() {
//console.log(count++);
preInit();
}, 10); // Try again every 10 ms..
return;
}
$.getJSON(_secureHost + '/base/members/current.aspx?callback=?',
function (data) {
$(document).ready(function() {
initPage(data);
});
});
}
şu neredeyse o. ama aslında jquery'yi yüklemek için ne kadar süreceğini bilmiyorum. JQuery yüklenene kadar bu kontrolü tekrarlamak zorundayım. Her 10 ms'yi kontrol eden bir zaman yaratabilirim .. Ama bu iyi hissetmiyor .. – AyKarsi
Ah, demek istediğin bu mu? JQuery'nin yüklü olup olmadığını test etmek istediğini sanıyordum. Bu durumda, jquery'nin
İşlevinizi çalıştıran komut dizininizin üstünde jQuery içeren komut dosyasını yerleştirdiğiniz sürece, düzgün çalışmalıdır.
yerine hazır fonksiyonunun bu da komut tamamlayan yardımcı olabilir:
kaynak
2011-01-07 09:16:44 Olical
Bu sadece $ (document) .ready (function() {} ile aynıdır. Sadece kısa bir versiyonu. –
JQuery içermeyen belge yükleri olarak işlevleri çalıştırmak için kullanıyorum. JQuery'nin bunun işlevselliğini değiştirdiğini bilmiyor muydu? – Olical
@Matt Bu, $ (function() {...}); ':) @ Wolfy87 olur. Bu, kodu kapsüllemek için güzel bir yoldur, ancak çok değişmez. Sonra tekrar, posterimizin çok fazla değişime ihtiyacı olduğunu düşünmüyorum. –
ekleyebilir ya tam fonksiyon veya ızgara tam işlevini yükleyebilirsiniz gösterildiği gibi jqGrid
üzerinde bazı işlemler yapmak için yardımcı olacaktır aşağıdakaynak
2011-01-07 09:21:37
hi ben Önce o
kaynak
2011-01-07 09:26:20 Hafiz
bundan emin olmadan önce aslında exectued edilebilir olmasıdır ?! Hala
Kullanabileceğin gerekiyor galiba loading..etc resimlere sahip olabilir dikkat ediniz: Ben footable jquery eklentisi kullanıyordum
Link
kaynak
2011-01-07 09:27:20 ifaour
Aslında jsonp'u mümkün olduğunca erken yürütmek istiyorum. Hazır belge, dom manipülasyon için hazırdır. manipülasyona başlamadan önce belgeye hazır olduğum sürece iyiyim. – AyKarsi
. Bu benim için çalıştı:
jquery sürümü - 1.9.1 footable sürümü - 0.5
kaynak
2014-01-20 14:23:02