プロジェクトにBootstrap)を使用しています。プレースホルダーは、Internet Explorer8以下を除くすべてのブラウザーで正常に表示されます。
IE8でプレースホルダーサポートを取得するためのソリューションはありますか?
このプラグインを使用できます https://github.com/mathiasbynens/jquery-placeholder IE6でも機能します
そのためにjquery透かしプラグインを使用できます
ルーベンスの回答から追加すると、ここにデモがあります
プラグインなしでこれを理解するのは難しいことではないはずです、私はこれに近い何かがトリックをするだろうと推測しています:
var test = document.createElement('input');
if (!('placeholder' in test)) {
$('input').each(function () {
if ($(this).attr('placeholder') != "" && this.value == "") {
$(this).val($(this).attr('placeholder'))
.css('color', 'grey')
.on({
focus: function () {
if (this.value == $(this).attr('placeholder')) {
$(this).val("").css('color', '#000');
}
},
blur: function () {
if (this.value == "") {
$(this).val($(this).attr('placeholder'))
.css('color', 'grey');
}
}
});
}
});
}
IE9以下は、placeholder
属性をサポートしていません。 this を参照してください
EZPZヒント を使用して補足することもできます。ブラウザがIEの場合は、スクリプトをロードするだけです
<!--[if lt IE 10]>
<script src="PATHTOFILE"></script>
<![endif]-->
EZPZヒントを使用すると、最新のブラウザーで引き続きplaceholder
を使用できます。
例:
<input type="text" id="search" placeholder="Search" />
$("input[type=text]").ezpz_hint();