Quill.js merupakan salah satu dari WYSIWYG (What You See Is What You Get) text editor yang dapat kamu gunakan secara gratis.
Quill.js secara default menyediakan beberapa modul yang langsung dapat digunakan, seperti Bold, italic, underline, striketrhough, dan banyak lainnya.
Modul-modul ini membungkus teks yang dipilih dengan menggunakan tag HTML yang telah ada sebelumnya.
Pada tutorial kali ini akan dijelaskan bagaimana cara menambahkan modul kustom yang dapat membungkus teks dengan menggunakan tag HTML kustommu sendiri.
Cara Menginstal Quill.js
Kamu dapat menggunakan Quill.js dengan membaca dokumentasinya pada website Quill.js atau kamu dapat menambahkan kode di bawah ini pada file proyekmu.
<!-- Menambahkan style Quill.js --> <link href="https://cdn.quilljs.com/1.3.6/quill.snow.css" rel="stylesheet"> <!-- Membuat container toolbar --> <div id="toolbar"> <button class="ql-bold">Bold</button> <button class="ql-italic">Italic</button> </div> <!-- Membuat editor container --> <div id="editor"> <p>Hello World!</p> </div> <!-- Menambahkan library Quill.js --> <script src="https://cdn.quilljs.com/1.3.6/quill.js"></script> <!-- Inisialisasi editor Quill --> <script> var editor = new Quill('#editor', { modules: { toolbar: '#toolbar' }, theme: 'snow', }) </script>
Cara Menambahkan Toolbar Quill.js
Kamu bisa menambahkan toolbar dengan cara berikut.
var toolbarOptions = [ ['bold', 'italic', 'underline', 'strike'], ['blockquote', 'code-block'], [{ header: 1 }, { header: 2 }], [{ list: 'ordered' }, { list: 'bullet' }], [{ script: 'sub' }, { script: 'super' }], [{ indent: '-1' }, { indent: '+1' }], [{ direction: 'rtl' }], // text direction [{ size: ['small', false, 'large', 'huge'] }], [{ header: [2, 3, 4, 5, 6, false] }], [{ color: [] }, { background: [] }], [{ font: [] }], [{ align: [] }], ['link', 'image', 'video'], ['formula'], ['clean'] ] var options = { modules: { toolbar: toolbarOptions, }, placeholder: 'Compose an epic..', theme: 'snow', } var editor = new Quill('#editor', options)
Membuat Tag HTML Kustom
Pertama-tama kita akan mengimport blot inline dengan cara berikut.
let Inline = Quill.import('blots/inline')
Kemudian buat kelas baru dan extend blot inlinenya.
class myTag extends Inline { } myTag.blotName = 'custom-tag' myTag.tagName = 'custom-tag'
Selanjutnya register kelas yang telah dibuat tadi ke Quill dengan cara berikut.
Quill.register(myTag)
Kemudian inisialisasikan Quill dengan modul baru yang telah dibuat dengan cara berikut.
var toolbarOptions = [ ['bold', 'italic', 'underline', 'strike'], ['blockquote', 'code-block'], [{ header: 1 }, { header: 2 }], [{ list: 'ordered' }, { list: 'bullet' }], [{ script: 'sub' }, { script: 'super' }], [{ indent: '-1' }, { indent: '+1' }], [{ direction: 'rtl' }], // text direction [{ size: ['small', false, 'large', 'huge'] }], [{ header: [2, 3, 4, 5, 6, false] }], [{ color: [] }, { background: [] }], [{ font: [] }], [{ align: [] }], ['link', 'image', 'video'], ['formula'], ['clean'], ['custom-tag'] // tag kustom ] var options = { modules: { toolbar: toolbarOptions, }, placeholder: 'Compose an epic..', theme: 'snow', } var editor = new Quill('#editor', options)
Pada saat inisialisasi, tombol custom-tag tidak akan terlihat apa-apa di toolbar Quill alias invisible karena hanya berupa tombol tanpa teks. Bagaimana cara mengatasinya ?
Tombol custom-tag memiliki sebuah atribut kelas .ql-custom-tag. Dengan menggunakan atribut kelas tersebut, kita akan menambahkan properti content pada pseudo elemennya dengan cara berikut.
.ql-custom-tag { width: auto; } .ql-custom-tag::after { content: 'Custom Tag'; }
Tautan Referensi
Blog Yang Mirip
Mau Cari Blog Yang Lain?
Cari blog lain di sini
Konten Yang Mirip
Konten yang mirip dengan konten ini




Mungkin Kamu Juga Suka
Konten yang mungkin kamu juga suka



Konten Lainnya
Konten lainnya yang bisa kamu jelajahi
Blog Informatif
Baca-baca blog topik random. Ada berbagai macam topik random yang tersedia, seperti game, pemrograman, dan banyak lagi. Mungkin terlalu random.
Resource Gratis
Di sini tersedia berbagai macam resource yang bisa kamu download secara gratis. Untuk saat ini tersedia pixel arts.
Online Tools
Tool untuk mempermudah pekerjaanmu. Mau mendapatkan angka acak? Kamu bisa pakai Random Number Generator. Mau menghitung berat badan idealmu? Kamu bisa pakai BMI Calculator. Di sini tersedia berbagai macam tool yang bisa kamu gunakan secara gratis.
Game Sederhana
Bosan? Bingung mau ngapain? Ayo main game-game sederhana, seperti Tic Tac Toe, Simple Math, dan semacamnya.
Daftar Singkatan
Mungkin kamu pernah dengar atau lihat sebuah kata yang cukup asing, seperti YGY, GG, dan lainnya. Di sini, kamu bisa cari tahu apa sih arti dari kata-kata tersebut. Selain itu, kamu juga bisa mencari tahu mengenai abreviasi/singkatan lainnya yang mungkin kamu belum tahu sebelumnya di koleksi abreviasi yang sudah dikumpulkan.