`

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

阅读更多

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

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

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

 

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

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

 

 2,核心方法

/***
 * convert Decimal str into hex(must be two bit,eg:02,f5)<br>
 *     '153'-->99
 * @param str
 */
to2Hex = function to2Hex(str) {
	var hex = parseInt(str).toString(16);
	if (hex.length === 1) {
		hex = '0' + hex;
	}
	return hex;
};

cssColor2Hex = function (cssColor) {
	var stringObj = cssColor.replace(/RGB[\s]*\(([\w,\s]+)\)[\s]*/i, "$1");
	//console.log(stringObj);
	var arr = stringObj.split(',');
	var r = com.whuang.hsj.trim(arr[0]);
	var g = com.whuang.hsj.trim(arr[1]);
	var b = com.whuang.hsj.trim(arr[2]);
	var rHex = to2Hex(r);
	var gHex = to2Hex(g);
	var bHex = to2Hex(b);
	return (rHex + gHex + bHex);
};
/***
 *
 * @param hexColor : #ccc
 * @param cssColor : [string]rgb(153, 153, 153)
 * @returns {boolean}
 */
compareColor = function compareColor(hexColor/*#789*/, cssColor/*rgb(153, 153, 153)*/) {
	if (typeof cssColor !== 'string') {
		return false;
	}
	if (hexColor === cssColor) {//IE8,jquery.css('color') will get '#ddd',but 'rgb(204, 204, 204)'
		return true;
	}
	if (com.whuang.hsj.startsWith(hexColor, '#')) {
		hexColor = hexColor.substr(1);//delete '#' in front
	}
	if (hexColor.length == 3) {
		hexColor = hexColor.substr(0, 1) + hexColor.substr(0, 1)
			+ hexColor.substr(1, 1) + hexColor.substr(1, 1) + hexColor.substr(2, 1) + hexColor.substr(2, 1);
	}
	var cssResult = cssColor2Hex(cssColor);
	return (cssResult === hexColor);
};

 在线demo:

http://123.57.250.51/static/js/form4_placehold_value.html

兼容IE7IE7以上,火狐,chrome

源代码见附件

  • 大小: 10.9 KB
0
0
分享到:
评论

相关推荐

    IE7 浏览器处理 兼容 input placeholder.zip

    标题中的"IE7浏览器处理兼容input placeholder"是指如何在不支持`placeholder`属性的IE7浏览器中模拟这一功能。这个问题的解决方案通常依赖于JavaScript库,例如在给定的压缩包中包含的`jquery.placeholder.min.js`...

    IE兼容placeholder js

    jQuery是一个流行的JavaScript库,它简化了DOM操作、事件处理和AJAX交互等任务,使得开发者能更容易地实现跨浏览器的兼容性功能。`jquery-placeholder-master`可能是一个包含完整源代码、文档和示例的项目,用于在IE...

    input中placeholder在Ie上兼容

    标题提到的“input中placeholder在Ie上兼容”指的是HTML5中的`placeholder`属性在Internet Explorer(IE)浏览器上的支持情况。`placeholder`属性用于在输入框`&lt;input&gt;`内显示提示文字,帮助用户了解输入字段应该...

    jQuery placeholder实现源码(兼容所有浏览器)

    总结来说,jQuery `placeholder`实现的源码主要是通过模拟`placeholder`属性来达到在所有浏览器中的兼容性。它通过监听`focus`和`blur`事件,动态地添加和移除提示文本,确保用户能够顺畅地与输入框交互。对于不支持...

    input的placeholder属性兼容ie8 优化版

    总之,要实现 `input` 的 `placeholder` 属性在 IE8 和 IE9 的兼容,我们需要借助 JavaScript 来模拟其行为。通过创建一个显示提示文本的 `&lt;span&gt;` 元素,并监听用户的输入和点击事件,我们可以为这些老版本的 IE ...

    IE8支持的placeholder组件

    因此,在现代项目中,我们更倾向于使用支持`placeholder`的现代浏览器,或者结合polyfill库来实现跨浏览器兼容。然而,对于仍需支持IE8的项目,`jquery-placeholder`无疑是一个可靠的解决方案。

    input框中出现提示文字(兼容ie 火狐 谷歌)

    此外,还可以使用一些现成的库,如jQuery Placeholder插件,它们已经处理了这些兼容性问题,只需要引入库并简单配置即可实现跨浏览器的提示文字。 总结来说,要实现`input`框中出现提示文字并兼容IE、火狐和谷歌,...

    ie6 7 8兼容html5属性placeholder

    这个功能在IE6、7、8等较老版本的Internet Explorer浏览器中默认不被支持,因为它们并未实现HTML5的全部特性。为了解决这个问题,开发者需要采用一些技巧来实现兼容。 首先,我们需要理解`placeholder`属性的工作...

    在IE8、IE9上实现placeholder效果

    原生手写的IEplaceholder.js插件,能够解决在IE9及以下浏览器上placeholder不能显示的bug,使用时只需要引入该IEplaceholder.js插件,然后获取所有的input节点,最后调用函数iePlaceholder(nodes,color)即可,nodes...

    IE浏览器支持placeholder

    针对IE浏览器对`placeholder`属性的不兼容问题,开发者通常会采用JavaScript(JS)插件来实现兼容性处理。这些插件通过JavaScript代码模拟`placeholder`的效果,使得在IE浏览器上也能呈现类似的功能。文件名...

    ie8以下浏览器不兼容jquery解决方案

    7. **测试和调试**:使用像IETester这样的工具进行跨版本的IE测试,确保在各个版本的IE中都能正常运行。同时,学会利用开发者工具(如IE8的Developer Tools)进行调试。 8. **渐进增强和优雅降级**:采用渐进增强...

    placeholder(HTML 5) IE 兼容插件

    为了实现全浏览器的兼容性,我们需要寻找一种解决方案,这就是“placeholder HTML 5 IE 兼容插件”的作用。 这篇博客文章(https://alxw4616.iteye.com/blog/2098609)很可能介绍了如何利用JavaScript或者jQuery来...

    IE下实现placeholder效果的jquery插件

    尤其是在JavaScript功能实现上,不同的浏览器对某些特性支持程度不一,比如在IE浏览器中,早期版本不支持HTML5中的`placeholder`属性。`placeholder`属性是HTML5引入的一个非常实用的功能,它允许我们在输入框中设置...

    解决IE8之前浏览器不支持placeholder属性的问题

    placeHolder是html5加入的新属性,此代码基于jQuery实现placeholder属性功能。

    ie8兼容placeholder.zip

    总的来说,处理IE8的`placeholder`兼容问题主要依赖于JavaScript和jQuery插件,通过这些方法,我们可以使旧版浏览器也能享受到现代Web开发带来的便利性。尽管现在大部分用户都已经升级到更现代的浏览器,但在某些...

    解决IE下不支持placeholder属性

    本篇文章将深入探讨如何在IE浏览器中实现`placeholder`属性的兼容性,以便让所有用户都能享受到这一便捷功能。 首先,我们需要了解`placeholder`属性的基本用法。在HTML中,我们通常这样使用它: ```html ...

    ie8兼容html5 css3圆角阴影渐变placeholder等属性

    标题中的“ie8兼容html5 css3圆角阴影渐变placeholder等属性”指的是在IE8浏览器上实现HTML5和CSS3的一些新特性,包括圆角、阴影、渐变以及placeholder属性的支持。这些特性在现代浏览器中是标准支持的,但在较旧的...

    placeholder效果的jQuery插件,支持IE6、IE7

    标题中的“placeholder效果的jQuery插件,支持IE6、IE7”指的是一个专门用于处理HTML5 placeholder属性的jQuery扩展,这个插件使得在不支持HTML5的旧版Internet Explorer(如IE6和IE7)中也能实现类似的功能。...

Global site tag (gtag.js) - Google Analytics