我开始知道jquery supports all including old browsers
但是我尝试为搜索框添加一个占位符,但它在IE8中不起作用
jQuery(document).ready(function(){
$('#search').attr('placeholder','search....');
});
所以我想了解更多有关跨浏览器支持的信息。如上所述它实际上是否有效?
我知道不支持html属性placeholder
。但我的问题是关于jquery。
答案 0 :(得分:2)
占位符是IE5不支持的HTML5功能
使用以下
<input type="text" value="search..." onfocus="if(this.value == 'search...') this.value = '';" onblur="if(this.value == '') this.value = 'search...';" />
使用jquery
<input type="text" class="my-input" value="" />
<script type="text/javascript">
$(document).ready(function () {
$('.my-input').val('search...');
$('.my-input').focus(function () {
if (this.value == 'search...') this.value = '';
});
$('input.my-input').blur(function () {
if (this.value == '') this.value = 'search...'
});
});
/*
here I assumed a class
.my-input
you can use input#id or input.className or other selector
better you give the code of your text-box or entire form so that I can give you the exact selector
*/
</script>
答案 1 :(得分:1)
不支持以上占位符。
因此,请将以下代码/注释添加到HTML页面的开头。现在ie8将很好地发挥。
<!-- HTML5 Shim and Respond.js IE8 support of HTML5 elements and media queries -->
<!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
<!--[if lt IE 9]>
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
<![endif]-->
答案 2 :(得分:0)
答案 3 :(得分:0)
这里的问题不是JQuery,而是占位符属性本身。有关您问题的答案,请参阅this chart:否,IE8不支持placeholder attribute。