实现跨浏览器的placeholder,兼容IE7

简介:

1,首先规定一下placeholder的规则

(1)文本框无内容失去焦点时,显示placeher的文字(一般是灰色字体);

(2)文本框聚焦时(还没有输入内容),placeher将消失,即文本框空白

 

(3)文本框输入内容时,placeholder也消失;

(4)文本框失去焦点时若有内容,则不显示placeholder

 

 2,核心方法

Js代码   收藏代码
  1. /*** 
  2.  * convert Decimal str into hex(must be two bit,eg:02,f5)<br> 
  3.  *     '153'-->99 
  4.  * @param str 
  5.  */  
  6. to2Hex = function to2Hex(str) {  
  7.     var hex = parseInt(str).toString(16);  
  8.     if (hex.length === 1) {  
  9.         hex = '0' + hex;  
  10.     }  
  11.     return hex;  
  12. };  
  13.   
  14. cssColor2Hex = function (cssColor) {  
  15.     var stringObj = cssColor.replace(/RGB[\s]*\(([\w,\s]+)\)[\s]*/i, "$1");  
  16.     //console.log(stringObj);  
  17.     var arr = stringObj.split(',');  
  18.     var r = com.whuang.hsj.trim(arr[0]);  
  19.     var g = com.whuang.hsj.trim(arr[1]);  
  20.     var b = com.whuang.hsj.trim(arr[2]);  
  21.     var rHex = to2Hex(r);  
  22.     var gHex = to2Hex(g);  
  23.     var bHex = to2Hex(b);  
  24.     return (rHex + gHex + bHex);  
  25. };  
  26. /*** 
  27.  * 
  28.  * @param hexColor : #ccc 
  29.  * @param cssColor : [string]rgb(153, 153, 153) 
  30.  * @returns {boolean} 
  31.  */  
  32. compareColor = function compareColor(hexColor/*#789*/, cssColor/*rgb(153, 153, 153)*/) {  
  33.     if (typeof cssColor !== 'string') {  
  34.         return false;  
  35.     }  
  36.     if (hexColor === cssColor) {//IE8,jquery.css('color') will get '#ddd',but 'rgb(204, 204, 204)'  
  37.         return true;  
  38.     }  
  39.     if (com.whuang.hsj.startsWith(hexColor, '#')) {  
  40.         hexColor = hexColor.substr(1);//delete '#' in front  
  41.     }  
  42.     if (hexColor.length == 3) {  
  43.         hexColor = hexColor.substr(0, 1) + hexColor.substr(0, 1)  
  44.             + hexColor.substr(1, 1) + hexColor.substr(1, 1) + hexColor.substr(2, 1) + hexColor.substr(2, 1);  
  45.     }  
  46.     var cssResult = cssColor2Hex(cssColor);  
  47.     return (cssResult === hexColor);  
  48. };  
相关文章
|
7月前
|
Web App开发 前端开发 JavaScript
|
1天前
|
存储 机器人
在阿里云RPA中,你可以通过以下步骤来更改默认唤醒IE浏览器的地址
【2月更文挑战第28天】在阿里云RPA中,你可以通过以下步骤来更改默认唤醒IE浏览器的地址
23 1
|
8月前
|
Web App开发 XML 编解码
IE浏览器下载文件中文文件名乱码问题解决
IE浏览器下载文件中文文件名乱码问题解决
91 0
|
1天前
|
Web App开发 JavaScript 前端开发
JavaScript在IE和标准浏览器下的兼容性处理
JavaScript在IE和标准浏览器下的兼容性处理
46 0
|
6月前
|
Web App开发 移动开发 安全
IE浏览器,和Edge浏览器
IE浏览器,和Edge浏览器
|
6月前
|
JavaScript
兼容IE浏览器
兼容IE浏览器
37 0
|
7月前
|
Windows
window10 自带浏览器ie11无法启动 问题解决
这几天有一个新项目,然后再做准备工作的时候需要用到IE浏览器,然后我电脑是win10的,发现打不开IE浏览器,怎么点都没有用,后来我找找了相关资料,大家可以参考一下,毕竟出现的问题不同
180 0
|
8月前
|
编解码 网络协议 开发工具
IE浏览器下如何低延迟播放RTSP或RTMP流
首先,虽然本文是介绍IE浏览器下OCX控件播放RTSP或RTMP,但这种方式并不推荐,毕竟它只能用于IE浏览器环境下,局限太大,而且随着微软IE浏览器的更新,不确定后续支持情况。当然,话说回来,如果是在特定的使用场景下,只需要某些版本IE浏览器支持,但对延迟和稳定性要求非常高,OCX控件方式也不失为一个好的选择。
101 1
|
8月前
|
编解码 网络协议 开发工具
如何在IE浏览器播放RTSP或RTMP流
好多开发者一直苦恼于如何在IE浏览器环境下,构建低延迟的RTSP或RTMP播放,对于RTSP流来说,好多公司通常的做法是把RTSP转RTMP,然后分发到RTMP服务器,然后服务器转http-flv出来,浏览器直接播放http-flv流,亦或通过flash控件直接播放RTMP流,还有就是,转hls流出来,缺点是hls流延迟更大。
295 0
|
9月前
|
Web App开发 JavaScript
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
JS 获取当前浏览器类型(IE、Chrome、Edge、Firefox、Opera、UC、QQ)
884 0