使用IE7编辑占位符属性

3

我想要访问和编辑输入字段的占位符属性,与IE8+兼容,但在IE7下无法使用。

我可以访问和读取属性,但无法在IE7中编辑属性。 我知道该属性在IE9及以下版本无法使用,但我正在使用插件使其与IE9及以下版本兼容。

//Console.log display the value on IE7
$item.attr('placeholder'); 

//Get an error on IE7, but works with IE8+. SCRIPT3: Member not found
$item.attr('placeholder', 'value'); 

有没有解决这个问题的想法?

谢谢。


你能分享一下这个代码片段吗? - Rohit Agrawal
3
通常情况下,您应该使用.prop()而不是.attr(),但即使如此,我也不确定它是否适用于在IE7上更改占位符属性,因为该浏览器不支持该属性。 - A. Wolff
你有没有考虑过是否直接放弃支持IE7?尤其是像这样的非关键功能——缺少占位符并不会(或者至少不应该)影响网站的直接可用性,因此只需将其去除,让IE7用户无法使用即可。毕竟现在IE7用户并不多,而且那些正在使用它的用户肯定已经习惯了在他们的浏览器中看到网站效果不佳的情况。 - Spudley
你使用的是哪个插件?是不是 http://widgetulous.com/placeholderjs/ ? - Dany Khalife
1个回答

0

我建议您使用一个jQuery插件来使用占位符。其他几个插件存在相同的问题,但Daniel Stocks的插件适用于IE >= 7。

如何使用:

HTML

<input type="text" placeholder="Text field" />
<textarea placeholder="Text area"></textarea>

jQuery

$('input[placeholder], textarea[placeholder]').placeholder();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接