placeholder在不支持html5的低版本的浏览器中,placeholder属性是无效的,ie9及以下的ie浏览器不兼该属性。
网上找到了解决办法:
解决思路是用input的value值来模拟placeholder的效果,包括input类型为password时的替换,但效果和placeholder稍有差异。
具体做法:引入jquery.placeholder.js文件,调用placeholder()方法。
文件下载地址:https://github.com/shwoodard/jquery.placeholder.js。
补充:在项目中应用的过程中发现,当input类型为password时,密码的input框$('input')调用placeholder()方法后获取到的value值为placeholder中的内容,后来仔细看了jquery.placeholder.js文件并结合项目发现,该方法中(type='password'时才会创建)创建的input( class为placeholder_el )和原本页面中存在的input(placeholder)有不同的class(方法中以标明),方法中在提交表单时(submit方法)将创建的input移除。但是,要注意前提要触发submit方法,否则需要在提交表单之前手动移创建的input($('input.placeholder_el').remove();)。