ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript模倣淘宝網検索ボックス入力イベントの実装

JavaScript模倣淘宝網検索ボックス入力イベントの実装

陈政宽~
陈政宽~オリジナル
2017-06-28 11:38:271900ブラウズ

この記事では主に淘宝網検索ボックスのユーザー入力イベントを模倣したJSの実装を紹介します。必要な友達は参考にしてください

淘宝網は私たちがよく使うオンラインショッピングプラットフォームです。淘宝網のホームページを開いて、淘宝網の検索ボックスを見つけてください。ご覧のとおり、ページを開くと、検索ボックスに灰色のフォント「Girls' High Heels」と点滅するカーソルが表示されます。ユーザーがクリックして入力すると、灰色のテキストが消えます。ユーザーがテキスト ボックスの内容をすべてクリアすると、灰色のテキストが自動的に復元されます。

次に、この小さなケースでは、この効果、つまりユーザー入力イベントを実現する方法を紹介します。 JavaScript模倣淘宝網検索ボックス入力イベントの実装

ユーザー入力を決定するイベントには、oninput と onpropertychange が含まれます。もちろん、ご想像のとおり、ブラウザの互換性の問題により、これらはさまざまな状況で表示されます。 通常のブラウザは oninput をサポートしますが、IE6、IE7、および IE8 は onpropertychange をサポートします。

時間を節約するために、淘宝網の CSS スタイルを模倣することはなくなりました。

コードと分析:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>判断用户输入事件第2遍oninput 和onpropertychange 的用法</title>
</head>
 <style>
    .search {
      width:300px;
      height: 30px;
      margin: 100px auto;
      position: relative;
    }
    .search input {
      width:200px;
      height:25px;
    }
    .search label {
      font-size: 12px;
      color:#ccc;
      position: absolute;
      top:8px;
      left:10px;
      cursor: text;
    }
  </style>
  <script type="text/javascript">
  业务逻辑分析:
//      1.内容为空时,光标和默认字显示在搜索框。自动获取焦点
//      2.当输入内容时,默认字消失。用oninput事件
    window.onload = function () {
      function $(id){ return document.getElementById(id);}
      $("txt").focus();//自动获取光标方法
      $("txt").oninput = $("txt").onpropertychange = function () {
      //oninput 大部分浏览器支持 检测用户表单输入内容
      //onpropertychange ie678 检测用户表单输入内容
        if ( this.value == ""){
          // 首先判断文本框里的值是否为空。注意用双等号!
          $("message").style.display = "block";
        } else {
          $("message").style.display = "none";
        }
      }
    }
  </script> 
<body>
<p class="search">
  <input type="text" id="txt">
  <label for="txt" id="message">仿淘宝搜索框</label>
  <!-- 注意label 中for属性 值指向 input 的id值 ,意思是把label标签和input表单相关联。
  label 元素不会向用户呈现任何特殊效果。当用户在label元素内点击文本, 浏览器就会自动将焦点转到和标签相关联的表单控件上。 -->
</p>
</body>
</html>

効果:

上記は、編集者が紹介したJS模倣の淘宝検索ボックスのユーザー入力イベントの実装です。ご質問があれば、皆様のお役に立てれば幸いです。メッセージを残してください。時間内に返信させていただきます。スクリプト ハウス Web サイトをサポートしてくださった皆様にも感謝いたします。

以上がJavaScript模倣淘宝網検索ボックス入力イベントの実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。