HTML5新加的Placeholder属性可以很方便的代替之前用onfocus,onblur的方法,并且比它更强大,但是万恶的IE8却不兼容。
可以使用JavaScript来解决IE8兼容问题,在IE8下,自动替换成onfocus方法,在支持HTML5的浏览器中则还是用Placeholder,不干扰。
首先需要添加jQuery
如果你的网站已经添加了jQuery,请忽略这一步。
在网站Head标签内添加:
<script type="text/javascript" src="http://code.jquery.com/jquery-1.5.2.min.js"></script>
添加js代码
将以下代码添加到</body>之前的任意位置:
<script type="text/javascript"> if( !('placeholder' in document.createElement('input')) ){ $('input[placeholder],textarea[placeholder]').each(function(){ var that = $(this), text= that.attr('placeholder'); if(that.val()===""){ that.val(text).addClass('placeholder'); } that.focus(function(){ if(that.val()===text){ that.val("").removeClass('placeholder'); } }) .blur(function(){ if(that.val()===""){ that.val(text).addClass('placeholder'); } }) .closest('form').submit(function(){ if(that.val() === text){ that.val(''); } }); }); } </script>