.Swap () işlevi hiç işe yaramıyor mu?

1.7rc1, 6625 numaralı satırın kaynağına göz atıyorum. .swap işlevini buldum:

// A method for quickly swapping in/out CSS properties to get correct calculations
swap: function( elem, options, callback ) {
    var old = {};

   //Remember the old values, and insert the new ones
    for ( var name in options ) {
        old[ name ] = elem.style[ name ];
        elem.style[ name ] = options[ name ];
    }

    callback.call( elem );

   //Revert the old values
    for ( name in options ) {
        elem.style[ name ] = old[ name ];
    }
}

Daha önce hiç görmedim. İnsanlar bunu gerçekten kullanıyor mu? Ne için?

0
@Blender: Tabii, neden olmasın?
katma yazar Randomblue, kaynak
Sadece eğlence için jQuery kaynağını mı okuyordun?
katma yazar Blender, kaynak
Bu özel bir işlevdir ( not dokümadı ), bu nedenle jQuery kullanıcıları için açık değildir.
katma yazar Matt Ball, kaynak
Birkaç satır aşağı bakarsanız, kullanıldığını görürsünüz. İç kullanım için büyük olasılıkla ..
katma yazar Gabriele Petrioli, kaynak

1 cevap

.swap(elem, options, callback) is a function that temporarily sets a number of CSS values (those passed in object of the 2nd argument), calls the callback (the 3rd argument) and then restores the original CSS values after the callback returns.

jQuery, bazı ölçümler yapmak için bazı şeylerin düzenini geçici olarak değiştirmek için kullanır. Örneğin, bir div nesnesini alıp position: mutute olarak ayarladığınızda, gerçek genişliğini elde edebileceksiniz, ancak belgenin normal düzeninde bulunuyorsa, bir div genişliğini alır. onun konteyner. Bir jQuery çağrısını .width() 'a yönlendirirseniz veya bu işlevin int tarafından nasıl kaynaklandığına bakarsanız, kullanıldığını görürsünüz.

Eminim onu ​​kullanmak için başka bir şey bulabilir/bulabilirsin, ama jQuery'nin bunu kullandığı ölçüm türlerinden başka bir şey bulamadım.

1
katma