Cara Menukar CSS Teks Terpilih dengan JavaScript
Untuk meningkatkan fungsi halaman web, anda mungkin mahu mencipta penanda buku JavaScript yang menyerlahkan teks yang dipilih, menukar latar belakangnya kepada kuning. Walaupun anda boleh mendapatkan teks dengan mudah menggunakan getSelText(), anda mungkin menghadapi kesukaran apabila cuba menukar CSSnya dengan fungsi highlightSelText() jQuery.
Isu ini timbul kerana highlightSelText() tidak dapat mengubah CSS daripada teks yang dipilih. Penyelesaian yang lebih berkesan ialah menggunakan kaedah execCommand(), yang menyediakan arahan untuk mengubah suai warna latar belakang dalam pelayar kontemporari. Berikut ialah coretan kod yang dikemas kini yang memanfaatkan keupayaan ini:
function highlight(colour) { var range, sel; if (window.getSelection) { // IE9 and non-IE try { if (!document.execCommand("BackColor", false, colour)) { makeEditableAndHighlight(colour); } } catch (ex) { makeEditableAndHighlight(colour) } } else if (document.selection && document.selection.createRange) { // IE <= 8 case range = document.selection.createRange(); range.execCommand("BackColor", false, colour); } }
Fungsi ini memanfaatkan execCommand() untuk menggunakan warna latar belakang yang dikehendaki pada teks yang dipilih, memastikan keserasian dengan semua penyemak imbas utama, termasuk Internet Explorer.
Atas ialah kandungan terperinci Bagaimana untuk Mengubah Warna Latar Belakang Teks Terpilih dengan JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!