Rumah > hujung hadapan web > tutorial css > Bolehkah jQuery Pilih CSS Pseudo-elemen Seperti :sebelum dan :selepas?

Bolehkah jQuery Pilih CSS Pseudo-elemen Seperti :sebelum dan :selepas?

Mary-Kate Olsen
Lepaskan: 2024-11-29 10:39:14
asal
582 orang telah melayarinya

Can jQuery Select CSS Pseudo-elements Like :before and :after?

Mengakses Pseudo-Elements melalui jQuery

Semasa mengerjakan soalan sebelumnya, kami meneroka cabaran memilih elemen pseudo berdasarkan kesan peraturan CSS. Mari kita teroka pendekatan alternatif menggunakan pemilih jQuery.

Sifat Latar Belakang

Pertimbangkan sifat CSS lalai berikut:

.commentarea .author:before {
    background-image: url(http://...);
    background-position: -9999px -9999px;
    /* ... */
}
Salin selepas log masuk

Sifat ini kemudiannya diubah suai secara terpilih:

.author[href$="gbacon"]:before /* ... */ {
  content: "";
  background-position: 0 -140px
}
Salin selepas log masuk

jQuery Pemilih

Untuk memilih elemen pseudo dengan kedudukan latar belakang lalai, pemilih asas seperti ini tidak akan berfungsi:

GM_log("size = " + $(".commentarea .author:before").size());
Salin selepas log masuk

Percubaan lain, seperti menggunakan .siblings(), juga gagal untuk menghasilkan hasil yang diingini.

Batasan Unsur Pseudo Pemilih

Adalah penting untuk ambil perhatian bahawa :before dan :after bukan pemilih jQuery yang sah. Ia mempunyai tujuan tertentu:

  • :sebelum memasukkan kandungan sebelum elemen yang dipilih
  • :selepas memasukkan kandungan selepas elemen yang dipilih

Contoh Penggunaan

HTML dan CSS berikut menunjukkan cara :sebelum dan :selepas kerja:

<span class='a'>
    Outer
    <span class='b'>
        Inner
    </span>
</span>
Salin selepas log masuk
.a .b:before {
    content: "|Inserted using :before|";
}

.a {
    color: blue;
}

.b {
    color: red;
}
Salin selepas log masuk

Dalam contoh ini, teks ditambahkan pada rentang dalam menggunakan :sebelumnya.

Alternatif

Sejak : sebelum bukan pemilih jQuery yang sah, pendekatan alternatif diperlukan. Satu pilihan ialah menggunakan pemalam jQuery luaran seperti jQueryRule untuk mengekstrak peraturan asal.

Sila ambil perhatian bahawa mengakses sifat gaya elemen pseudo dengan jQuery boleh mencabar. Pertimbangkan dengan teliti sama ada terdapat pendekatan alternatif yang mungkin memenuhi keperluan anda dengan lebih berkesan.

Atas ialah kandungan terperinci Bolehkah jQuery Pilih CSS Pseudo-elemen Seperti :sebelum dan :selepas?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan