Bagaimana untuk Mengubah Saiz Teks secara Automatik dengan Prototaip?

DDD
Lepaskan: 2024-10-20 21:28:30
asal
413 orang telah melayarinya

How to Auto-Resize Textareas with Prototype?

Autosaiz semula kawasan Teks dengan Prototaip

Meluaskan idea untuk meningkatkan pengalaman pengguna dengan mengubah saiz kawasan teks secara automatik, artikel ini mengupas tentang penyelesaian menggunakan rangka kerja JavaScript Prototaip. Matlamatnya adalah untuk melaraskan ketinggian kawasan teks berdasarkan jumlah teks yang terkandung di dalamnya, meningkatkan estetika dan kebolehbacaan.

Saiz Semula Menegak dengan Prototaip

Prototaip menyediakan cara yang mudah untuk dicapai tingkah laku ini. Setelah perpustakaan Prototaip dimuatkan, anda boleh melaksanakan skrip berikut:

resizeIt = function() {
  var str = $('iso_address').value; // Replace 'iso_address' with your textarea ID
  var cols = $('iso_address').cols;
  var linecount = 0;

  $A(str.split("\n")).each(function(l) {
    linecount += 1 + Math.floor(l.length / cols); // Consider long lines
  })

  $('iso_address').rows = linecount;
};
Salin selepas log masuk

Mengikat pada Acara

Untuk mencetuskan pelarasan kawasan teks pada input pengguna, anda boleh mengikat fungsi resizeIt kepada pengendali acara. Contohnya, untuk mengubah saiz pada input utama:

Event.observe('iso_address', 'keydown', resizeIt);
Salin selepas log masuk

Penjelasan

Fungsi resizeIt:

  • Mendapatkan semula nilai dan nombor textarea daripada lajur.
  • Memisahkan teks kepada baris dan mengira bilangan baris yang diperlukan berdasarkan kiraan baris dan lebar lajur.
  • Menetapkan atribut baris textarea kepada nilai yang dikira.
  • Petua Tambahan

    Untuk pengalaman pengguna yang lebih baik, anda mungkin mahu mencetuskan semula saiz hanya selepas pengguna berhenti menaip untuk tempoh yang singkat (cth., menggunakan window.setTimeout).

    Walaupun contoh JavaScript adalah mudah, ia tidak diuji sepenuhnya dan mungkin memerlukan pelarasan untuk keperluan kawasan teks khusus anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengubah Saiz Teks secara Automatik dengan Prototaip?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!