Saya ingin dapat mengubah area teks tertentu pada sebuah halaman menjadi editor ACE.
Apakah ada yang punya petunjuk, tolong?
EDIT:
Saya memiliki file editor.html yang bekerja dengan satu textarea, tetapi segera setelah saya menambahkan yang kedua, yang kedua tidak diubah menjadi editor.
EDIT 2:
Saya memutuskan untuk membuang ide untuk memiliki beberapa, dan sebagai gantinya membukanya di jendela baru. Masalah baru saya adalah ketika saya menyembunyikan () dan menampilkan () textarea, tampilan menjadi serba salah. Ada ide?
Jawaban:
Sejauh yang saya mengerti tentang ide Ace, Anda seharusnya tidak membuat textarea editor Ace itu sendiri. Anda harus membuat div tambahan dan memperbarui textarea menggunakan fungsi .getSession () sebagai gantinya.
html
js
atau panggil saja
hanya jika Anda mengirimkan formulir dengan textarea yang diberikan. Saya tidak yakin apakah ini cara yang benar untuk menggunakan Ace, tetapi ini adalah cara yang digunakan di GitHub .
sumber
'SELECT 1OR&nbps;2;'
ke textarea. Bisakah seseorang memberi tahu saya apa yang saya lakukan salah?Duncansmart memiliki solusi yang cukup mengagumkan di halaman github-nya, progresif-ace yang menunjukkan satu cara sederhana untuk menghubungkan editor ACE ke halaman Anda.
Pada dasarnya kita mendapatkan semua
<textarea>
elemen dengandata-editor
atribut dan mengubahnya menjadi editor ACE. Contoh ini juga menyetel beberapa properti yang harus Anda sesuaikan dengan keinginan Anda, dan mendemonstrasikan bagaimana Anda dapat menggunakandata
atribut untuk menyetel properti per elemen seperti menampilkan dan menyembunyikan selokandata-gutter
.sumber
Anda dapat memiliki beberapa Editor Ace. Berikan saja setiap area teks sebuah ID dan buat Editor Ace untuk kedua IDS seperti ini:
sumber
Untuk membuat editor, lakukan saja:
HTML:
JS:
CSS:
Mereka harus diposisikan dan diukur secara eksplisit. Dengan show () dan hide () Saya yakin Anda mengacu pada fungsi jQuery. Saya tidak yakin persis bagaimana mereka melakukannya, tetapi itu tidak dapat mengubah ruang yang dibutuhkan di DOM. Saya bersembunyi dan menunjukkan menggunakan:
Jika Anda menggunakan properti css 'display' itu tidak akan bekerja.
Lihat wiki di sini untuk mengetahui cara menambahkan tema, mode, dll ... https://github.com/ajaxorg/ace/wiki/Embedding---API
Catatan: mereka tidak harus textarea, mereka bisa menjadi elemen apapun yang Anda inginkan.
sumber
ace.edit('code1')
Anda mendapatkan sampah seperti:<textarea class="ace_editor ace-twilight ace_focus"><div class="ace_gutter">...</textarea>
Dengan kata lain ace.edit mencoba memasukkan dirinya ke dalam textarea dan ini tidak terlalu bagus.Untuk siapa pun seperti saya yang hanya menginginkan contoh kerja minimal menggunakan Ace dari CDN:
sumber