Rumah > hujung hadapan web > tutorial css > Adakah .css() jQuery Mengendalikan Awalan Penyemak Imbas Secara Automatik?

Adakah .css() jQuery Mengendalikan Awalan Penyemak Imbas Secara Automatik?

DDD
Lepaskan: 2024-11-11 18:25:03
asal
972 orang telah melayarinya

Does jQuery's .css() Automatically Handle Browser Prefixes?

Adakah jQuery Mengendalikan Awalan Penyemak Imbas Secara Automatik dengan .css()?

Kaedah .css() jQuery memudahkan proses memanipulasi sifat CSS. Tetapi persoalan biasa timbul: adakah ia menggunakan awalan vendor khusus penyemak imbas secara automatik?

Jawapan:

Dalam versi awal jQuery, penambahan awalan vendor tidak dikendalikan secara automatik. Walau bagaimanapun, dengan keluaran jQuery 1.8.0, fungsi ini telah diperkenalkan. Oleh itu, kaedah .css() jQuery kini dengan lancar mengendalikan awalan vendor untuk sifat CSS.

Implikasi untuk Pembangun:

Pengendalian awalan automatik ini memudahkan kod anda dengan menghapuskan perlu menambahkannya secara manual. Walau bagaimanapun, adalah penting untuk ambil perhatian perkara berikut:

  • Jika anda menggunakan versi jQuery yang sudah lapuk, anda perlu melaksanakan sendiri awalan vendor atau menggunakan kaedah .cssHooks() jQuery.
  • Sifat CSS tersuai mungkin memerlukan penambahan manual vendor awalan.

Contoh Kod untuk Versi jQuery Terdahulu:

Kod berikut menunjukkan cara menggunakan .cssHooks() jQuery untuk menambah awalan vendor dalam versi terdahulu:

(function($) {
  function styleSupport(prop) {
    var prefixes = ['Moz', 'Webkit', 'O', 'ms'],
        div = document.createElement('div');

    if (prop in div.style) {
      supportedProp = prop;
    } else {
      for (var i = 0; i < prefixes.length; i++) {
        vendorProp = prefixes[i] + capProp;
        if (vendorProp in div.style) {
          supportedProp = vendorProp;
          break;
        }
      }
    }

    div = null;
    $.support[prop] = supportedProp
    return supportedProp
  }

  var myCssPropName = styleSupport("myCssPropName");

  if (myCssPropName &amp;&amp; myCssPropName !== 'myCssPropName') {
    $.cssHooks["myCssPropName"] = {
      get: function(elem, computed, extra) {
        return $.css(elem, myCssPropName);
      },
      set: function(elem, value) {
        elem.style[myCssPropName] = value;
      }
    };
  }
})(jQuery);
Salin selepas log masuk

Atas ialah kandungan terperinci Adakah .css() jQuery Mengendalikan Awalan Penyemak Imbas Secara Automatik?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan