JavaScript实现的文本框placeholder提示文字功能示例


Posted in Javascript onJuly 25, 2018

本文实例讲述了JavaScript实现的文本框placeholder提示文字功能。分享给大家供大家参考,具体如下:

<!doctype html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>3water.com JS文本框placeholder提示</title>
</head>
<body>
  <input id="input" type="text" value="请输入关键词">
</body>
<script>
    window.onload = function() {
      var defaultValue = "请输入关键词";
      var input = document.getElementById("input");
      input.style.color = "grey";
      input.onfocus = function() {
        if (this.value == defaultValue) {
          input.value="";
          setCursorPosition(this, 0);
        }
      };
      input.onblur = function() {
        if (this.value == "") {
          this.value = defaultValue;
        }
      };
      input.onkeypress = function(e) {
        e = e || window.event;
        var key = e.charCode || e.keyCode || e.which;
        if (this.value == defaultValue) {
          this.value = "";
          this.style.color = "black";
        }
        if (this.value.length == 1 && key == 8) {
          this.value = defaultValue;
          this.style.color = "grey";
          setCursorPosition(this, 0);
        }
      };
    };
    function setCursorPosition(elem, index) {
      if (elem.setSelectionRange) {
        elem.focus();
        elem.setSelectionRange(index, index);
      }
      else if (elem.createTextRange) {
        var range = elem.createTextRange();
        range.collapse(true);
        range.moveEnd('character', index);
        range.moveStart('character', index);
        range.select();
      }
    }
</script>
</html>

感兴趣的朋友可以使用在线HTML/CSS/JavaScript代码运行工具:http://tools.3water.com/code/HtmlJsRun测试一下运行效果。

希望本文所述对大家JavaScript程序设计有所帮助。

Javascript 相关文章推荐
IE7中javascript操作CheckBox的checked=true不打勾的解决方法
Dec 07 Javascript
js获取IFRAME当前的URL的方法
Nov 13 Javascript
node.js中的fs.read方法使用说明
Dec 17 Javascript
js实现动态加载脚本的方法实例汇总
Nov 02 Javascript
AngularJS单选框及多选框实现双向动态绑定
Jan 13 Javascript
详解JS面向对象编程
Jan 24 Javascript
基于BootStrap Metronic开发框架经验小结【三】下拉列表Select2插件的使用
May 12 Javascript
如何解决手机浏览器页面点击不跳转浏览器双击放大网页
Jul 01 Javascript
Angular2生命周期钩子函数的详细介绍
Jul 10 Javascript
原生JS实现列表子元素顺序反转的方法分析
Jul 02 Javascript
Angular7.2.7路由使用初体验
Mar 01 Javascript
vue data变量相互赋值后被实时同步的解决步骤
Aug 05 Javascript
Bootstrap Fileinput 4.4.7文件上传实例详解
Jul 25 #Javascript
JavaScript简单实现关键字文本搜索高亮显示功能示例
Jul 25 #Javascript
微信小程序实现指定显示行数多余文字去掉用省略号代替
Jul 25 #Javascript
JavaScript对象的浅拷贝与深拷贝实例分析
Jul 25 #Javascript
Vue与Node.js通过socket.io通信的示例代码
Jul 25 #Javascript
jQuery.extend 与 jQuery.fn.extend的用法及区别实例分析
Jul 25 #jQuery
详解Vue源码学习之callHook钩子函数
Jul 25 #Javascript
You might like
快速配置PHPMyAdmin方法
2008/06/05 PHP
PHP+ajaxfileupload+jcrop插件完美实现头像上传剪裁
2014/06/09 PHP
使用PHP如何实现高效安全的ftp服务器(一)
2015/12/20 PHP
jQuery中extend函数详解
2015/02/13 Javascript
javascript连续赋值问题
2015/07/08 Javascript
FullCalendar日历插件应用之数据展现(一)
2015/12/23 Javascript
使用JavaScript为Kindeditor自定义按钮增加Audio标签
2016/03/18 Javascript
Nodejs学习item【入门手上】
2016/05/05 NodeJs
JavaScript实战之带收放动画效果的导航菜单
2016/08/16 Javascript
js实现select选择框效果及美化
2016/08/19 Javascript
原生js中ajax访问的实例详解
2017/09/19 Javascript
Angular如何在应用初始化时运行代码详解
2018/06/11 Javascript
JS 实现微信扫一扫功能
2018/09/14 Javascript
jQuery事件绑定和解绑、事件冒泡与阻止事件冒泡及弹出应用示例
2019/05/13 jQuery
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
layui时间控件选择时间范围的实现方法
2019/09/28 Javascript
Python中if __name__ == '__main__'作用解析
2015/06/29 Python
python Selenium爬取内容并存储至MySQL数据库的实现代码
2017/03/16 Python
Django使用uwsgi部署时的配置以及django日志文件的处理方法
2019/08/30 Python
Python3操作Excel文件(读写)的简单实例
2019/09/02 Python
Python流程控制 while循环实现解析
2019/09/02 Python
Pycharm激活码激活两种快速方式(附最新激活码和插件)
2020/03/12 Python
Python基于wordcloud及jieba实现中国地图词云图
2020/06/09 Python
美国综合购物商城:UnbeatableSale.com
2018/11/28 全球购物
int *p=NULL和*p= NULL有什么区别
2014/10/23 面试题
大宝sod蜜广告词
2014/03/21 职场文书
个人存款证明书
2014/10/18 职场文书
2014年班长个人工作总结
2014/11/14 职场文书
2014年个人技术工作总结
2014/12/08 职场文书
党员思想汇报材料
2014/12/19 职场文书
仓库保管员岗位职责
2015/02/09 职场文书
幼儿园六一儿童节主持词
2015/06/30 职场文书
春季运动会加油词
2015/07/18 职场文书
原生Javascript+HTML5一步步实现拖拽排序
2021/06/12 Javascript
Apache Pulsar集群搭建部署详细过程
2022/02/12 Servers
解决 Redis 秒杀超卖场景的高并发
2022/04/12 Redis