/ / IEの入力タグのプレースホルダー属性? -css、インターネットエクスプローラー

プレースホルダ属性はIEの入力タグにありますか? - css、internet-explorer

Internet Explorerが入力タグのプレースホルダー属性をサポートしていないことは知っていますが、確かに2012年にはIEの別のソリューションが必要ですか?

回答:

回答№1は14

私はしばらく前にjQueryプラグインを作成しました。これは、それをサポートしていないブラウザーにプレースホルダーサポートを追加します。

IEのプレースホルダーテキスト


回答№2の場合は3

実はIE サポートをしています 2012年のプレースホルダー属性(バージョン10)。これを組み合わせる ポリフィル 古いブラウザの場合、問題に対する包括的な解決策が必要です。


回答№3の場合は0

このjQueryプラグインを本番環境で数週間使用しており、うまく機能しているようです。

http://webcloud.se/code/jQuery-Placeholder/


回答№4の場合は0

http://the.deerchao.net/PlaceHolder つまり、関数を呼び出さなくても機能します。


回答№5の場合は0

私が開発したこのjQueryプラグインを試してください

https://github.com/ramsunvtech/jQuery-Plugins/tree/master/IEPlaceHolder


答え№6の場合は0

はい、IE8とIE9には非常に簡単なソリューションがあります。これは、IEのより優れたバージョンではすでに機能しているためです。 (IE10、IE11など)

これは私が見つけた解決策です:

1. InternetExplorerのバージョンを検出します

<!--[if lt IE 10]>
<script type="text/javascript">var ie = 9;</script>
<![endif]-->
<!--[if lt IE 9]>
<script type="text/javascript">var ie = 8;</script>
<![endif]-->

2.プレースホルダーを修正します

if (typeof ie == "undefined") var ie = 10;
if (ie == 8 || ie == 9){

$("input[placeholder]").each(function() {
this.value = $(this).attr("placeholder");
});

$("input[placeholder]").focus(function()
if (this.value == $(this).attr("placeholder")) this.value = "";
}).blur(function() {
if (this.value == "")
this.value = $(this).attr("placeholder");
});
}