HTML5 プレースホルダー属性 (IE 互換) 実装 code_jquery

WBOY
リリース: 2016-05-16 16:38:22
オリジナル
962 人が閲覧しました

HTML5 では、新しい入力タイプ、フォーム検証など、Web フォームに多くの機能強化が加えられています。

プレースホルダーは、HTML5 で追加されたもう 1 つの新しい属性です。この属性が入力エリアまたはテキストエリアに設定されている場合、テキスト ボックスにフォーカスが当たると、値の内容が灰色のテキスト プロンプトとして表示されます。消えます。以前は、この効果は JavaScript を使用することでのみ実現できましたが、Firefox や Google Chrome などはこの機能のサポートを表明していましたが、矛盾しているのは IE だけでした。

例:

IE でプレースホルダーをサポートできるようにする強力な属性プラグインを紹介します。プレースホルダーをサポートしていない他のブラウザーとも互換性があります。コードは次のとおりです。

$(document).ready(function(){ 
 var doc=document,
 inputs=doc.getElementsByTagName('input'),
 supportPlaceholder='placeholder'in doc.createElement('input'),
 
 placeholder=function(input){
  var text=input.getAttribute('placeholder'),
  defaultValue=input.defaultValue;
  if(defaultValue==''){
  input.value=text
  }
  input.onfocus=function(){
  if(input.value===text)
  {
   this.value=''
  }
  };
  input.onblur=function(){
  if(input.value===''){
   this.value=text
  }
  }
 };
 
 if(!supportPlaceholder){
  for(var i=0,len=inputs.length;i<len;i++){
   var input=inputs[i],
   text=input.getAttribute('placeholder');
   if(input.type==='text'&&text){
    placeholder(input)
   }
  }
 }
 });
ログイン後にコピー
コードをコピーして参照用に js ファイルとして保存するだけで、何も処理する必要がなく、非常に便利です。

例: これにより、IE の入力にプレースホルダー属性が表示されますが、ページに入力が 1 つしかない場合は問題ありません。入力に値が入力されていない場合は、空になります。入力すると、プレースホルダー値が自動的に value に入力され、エラーが発生します。例:


<input type="text" placeholder="输入商品编码" name="goodscode" id="goodscode" value="123" />
<input type="text" placeholder="输入商品名称" name="goodsname" id="goodsname" value="输入商品名称" />
ログイン後にコピー
解決策は、バックグラウンドで独自の判断を行うことです。おそらく上記の js ファイルで解決できるので、後で検討します~!


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!