Tampaknya ini adalah masalah yang sangat terkenal tetapi semua solusi yang saya temukan di Google tidak berfungsi pada IE9 yang baru saya unduh.
Mana cara favorit Anda untuk mengaktifkan Placeholder
properti di tag input
dan textarea
?
Opsional: Saya kehilangan banyak waktu untuk itu dan belum mencari required
properti. Apakah Anda juga punya saran untuk ini? Jelas saya dapat memeriksa nilai dalam PHP, tetapi untuk membantu pengguna properti ini sangat nyaman.
javascript
html
internet-explorer-9
placeholder
chriscatfr
sumber
sumber
Jawaban:
Plugin HTML5 Placeholder jQuery
- oleh Mathias Bynens (kolaborator di HTML5 Boilerplate dan jsPerf )
https://github.com/mathiasbynens/jquery-placeholder
Demo & Contoh
http://mathiasbynens.be/demo/placeholder
ps
Saya telah menggunakan plugin ini berkali-kali dan itu berfungsi memperlakukan. Juga tidak mengirimkan teks placeholder sebagai nilai ketika Anda mengirimkan formulir Anda (... rasa sakit yang sebenarnya saya temukan dengan plugin lain).
sumber
onclick="_IW.FormsRuntime.submit(this.form);"
. Adakah saya bisa mengubah acara onclick ini untuk pertama-tama menghapus placeholder, dan kemudian menjalankan kode CRM ini yang ada di onclick?Saya pikir ini adalah apa yang Anda cari: jquery-html5-placeholder-fix
Solusi ini menggunakan deteksi fitur (melalui modernizr ) untuk menentukan apakah placeholder didukung. Jika tidak, tambahkan dukungan (via jQuery).
sumber
$(this)
harus ditugaskan ke variabel yang dapat digunakan di seluruh kode. Memanggil$
untuk setiap ekspresi yang digunakan$(this)
adalah cara langsung untuk "Don't Write jQuery Like This 101".Jika Anda ingin melakukannya tanpa menggunakan jquery atau modenizer Anda dapat menggunakan kode di bawah ini:
Untuk setiap bidang teks yang ingin Anda gunakan untuk Anda perlu menjalankan
placeHolder(HTMLInputElement)
, tapi saya kira Anda bisa mengubahnya sesuai! Selain itu, melakukannya dengan cara ini, bukan hanya saat memuat berarti Anda dapat membuatnya berfungsi untuk input yang tidak ada di DOM saat laman dimuat.Perhatikan, bahwa ini berfungsi dengan menerapkan class:
usingPlaceHolder
ke elemen input, sehingga Anda dapat menggunakan ini untuk gaya itu (misalnya menambahkan aturan.usingPlaceHolder { color: #999; font-style: italic; }
untuk membuatnya terlihat lebih baik).sumber
Inilah solusi yang jauh lebih baik. http://bavotasan.com/2011/html5-placeholder-jquery-fix/ Saya sudah mengadopsi sedikit untuk bekerja hanya dengan browser di bawah IE10
sumber
Jika Anda ingin memasukkan deskripsi, Anda dapat menggunakan ini. Ini berfungsi pada IE 9 dan semua browser lainnya.
sumber
Menggunakan mordernizr untuk mendeteksi browser yang tidak mendukung Placeholder, saya membuat kode pendek ini untuk memperbaikinya.
sumber
placeholder
properti distandarisasi sebagai string => tidak perlu untuk Modernizr sebenarnya ::::::::::::::::::::::::::::if( typeof $('<input type="text">').get(0).placeholder == "undefined" ){ ... }
adalah tes enaugh untuk tidak mendukung, diuji dalam emulasi mode IE9 - berfungsi.Saya tahu saya terlambat tetapi saya menemukan solusi memasukkan di kepala tag:
sumber
untuk membuatnya berfungsi di IE-9 gunakan di bawah ini. Itu bekerja untuk saya
JQuery perlu menyertakan:
Gaya CSS harus termasuk:
sumber
Agak terlambat ke pesta, tetapi saya menggunakan JS saya yang sudah dicoba dan tepercaya yang memanfaatkannya Modernizr . Dapat disalin / ditempelkan dan diterapkan ke proyek apa pun. Bekerja setiap saat:
sumber
Saya biasanya berpikir sangat tinggi dari http://cdnjs.com/ dan mereka mendaftar:
//cdnjs.cloudflare.com/ajax/libs/placeholder-shiv/0.2/placeholder-shiv.js
Tidak yakin siapa kode itu tetapi kelihatannya mudah:
sumber
Saya mencari di internet dan menemukan kode jquery sederhana untuk menangani masalah ini. Di pihak saya, itu diselesaikan dan dikerjakan yaitu 9.
sumber