ブラウザがHTML5プレースホルダタグをサポートしているかどうか調べることができます。そのため、jQueryプレースホルダプラグインをフックするかどうかを決めることができます。HTML5「プレースホルダ」サポート
答えて
var placeholderSupported = ('placeholder' in document.createElement('input'));
変数placeholderSupported
はtrue
になります。それ以外の場合は、false
に設定されます。
幅広いアイデアに行く取得するには:
http://caniuse.com/#search=placeholder
そして、あなたが行うことができますブラウザでテストするために:あなたはModernizrとyepnopeのようなサードパーティのライブラリを含めたい場合は
function supportsPlaceholder() {
var i = document.createElement('input');
return 'placeholder' in i;
}
.jsでは、サポートをテストし、徐々に強化し、優雅に低下させるのは本当に簡単です。
これは役立つはず資源のたくさんの良い記事です:
return 'placeholder' in document.createElement('input');
http://www.sitepoint.com/regressive-enhancement-with-modernizr-and-yepnope/
http://diveinto.html5doctor.com/everything.html#placeholderしかし、あなたが使用しているjQueryプラグインが既にネイティブサポートのためにチェックされる可能性があります - あなたはをかもしれませんはこれを自分で行う必要はありません。それがネイティブにサポートされている場合
私は上記の回答から借り、それは古い最近のブラウザだけでなく、IEとの後方互換性があるので、それを作った -
以下のコードを使用すると、「値」と「プレースホルダの両方を持っていることを確認してください'属性を入力フィールドに設定します。私の場合、私はIEの亜種をサポートする必要がありました。
説明 - ブラウザでプレースホルダがサポートされている場合、入力値は削除されます。そうでない場合、古いブラウザはプレースホルダ属性を無視し、下位のjsはデフォルトのプレースホルダ動作を模倣します。このスクリプトはCSRFの認証トークンも無視します(私のフォームでauthトークンの値がクリアされ、私のRailsアプリケーションでCSRF警告が発生するエラーが発生していました)。スクリプト自体を簡素化する
別のアプローチは、あなたが(具体的に以下の方法が少し乾燥しているが)、このスクリプトを利用し、それに応じて、真のステートメントを更新する各入力にクラスを割り当てることです。
var placeholderSupported = !!('placeholder' in document.createElement('input'));
if (placeholderSupported === true){
$('input:not([type="submit"], [name="authenticity_token"])').val('');
} else{
$('input')
.focus(function() {
if (this.value === this.defaultValue) {
this.value = '';
}
})
.blur(function() {
if (this.value === '') {
this.value = this.defaultValue;
}
});
}
- 1. HTML5プレースホルダCSSパディング
- 2. html5プレースホルダの整列
- 3. Struts内のHTML5プレースホルダhtml:textタグ
- 4. HTML5振動APIのサポート
- 5. ピンチズームをサポートするHTML5チャートライブラリ
- 6. IE5/8サポートのHTML5.js
- 7. HTML5でのMIDI音楽サポート
- 8. モバイルHTML5 APIの統合サポート
- 9. JSF for javaのHTML5サポート
- 10. html5 <time>タグのサポート
- 11. HTML5でIE8をサポートする
- 12. Googleのhtml5プレースホルダがレンダリングされていませんか?
- 13. はHTML5、プレースホルダ、私は入力フィールド持ちのWebkit
- 14. HTML5とプレースホルダ:これを徐々に行う方法は?
- 15. Symfony 1.4でHTML5プレースホルダを使用する方法
- 16. HTML5サイトはHTML5をサポートしていますか?
- 17. HTML5ローカルストレージでサポートされるデータ
- 18. HTML5タグ、イベント、属性のテストのサポート
- 19. HTML5とJQueryモバイルアプリケーションをサポートするブラウザ
- 20. html5プレーヤーのためのDRmのサポート
- 21. 新しいHTML5 Canvas APIのサポート
- 22. プレースホルダ - operamobileではサポートしていません - Jquerymobile
- 23. 文字列のプレースホルダがサポートされていないフォーマット文字
- 24. プレースホルダ
- 25. プレースホルダ
- 26. HTML5要素をサポートするためにIE9にもHTML5 shivが必要です
- 27. HTML5の数値入力でプレースホルダのテキストを表示する方法
- 28. HTML5で複数のプレースホルダを許可しない理由は何ですか?
- 29. HTML5プレースホルダの属性:テキストエリアにChromeが行折り返ししない
- 30. SQLプレースホルダ
なぜあなたは必要ですか?表現の中で? – hop
@hop - そうです。私はしません。更新しました。 –