Şimdiye kadar bir JS geliştiricisi yok (aslında, neredeyse hiç geliştirici :) ama belirli bir web sayfasında birkaç unsuru gizlemek için küçük bir Greasemonkey komut dosyası yazmayı denemek istedim. Bir kere dalga geçmeye başladığımda, jQuery'yi kullanmaya karar verdim, sadece bunu kolaylaştırmak için. Her şey yolunda gitti, senaryo çalışıyor, ama şimdi hazır, detayları merak etmeye başladım.Elemanların görünürlüğünü değiştirirken web tarayıcısının boyalarını nasıl dondururuz?
Komut dosyasının bir parçası olarak, önceki ve sonraki kardeşleriyle birlikte belirli bir öğe bulup gizlemem gerekiyor. O okunabilir değil ile sona erdi, ama çalışma satır: Burada
$('div#some-weird-box').prev().toggle(w).next().toggle(w).next().toggle(w);
Benim endişe ben üç ayrı adımda üç ayrı div'leri kaldırarak olduğumu vardır. Bu, tarayıcının sayfayı üç kez "yeniden çizmesine" neden olur, değil mi? Bu üç div ile ilgili bir problem değil, muhtemelen daha fazla element olduğunda önemli olmaya başlayacaktı. Yani, sorum şu: tarayıcıya "sayfayı yenilemeyi/yeniden çizmeyi durdur" diyebilmenin bir yolu var mı? Varsa bunu kullanabilir, rastgele sayıdaki öğeyi gizleyebilir ve sonra tarayıcıyı ekrana güncellemesini isteyebilirim.
İlginç. Bana gösterebileceğin iyi bir okuma var mı? Bu durumda, öğeyi ağaçtan kaldırmak, değişiklikleri uygulamak, sonra geri getirmek için tüm bu önerileri neden görüyorum? http://www.slideshare.net/nzakas/writing-efficient-javascript - slayt 77 veya 88 ...? – yacoob
Bu oldukça cesur bir battaniye ifadesi, Bu zamanın% 100 olacağı söylenemez. –
Ben battaniye beyanında bulunmadım. Yayınladığı kodla ilgili bir açıklama yaptım. Bununla ilgili endişelenecek bir şeyi yok. Herhangi bir tarayıcıda yalnızca bir rötuş görecek ve 3 düğümü değiştirdiğinde, düğümü klonlamamalı ve sayfanın dışına değiştirmemelidir. – Prestaul