输入[type =“range”]选择器在IE7中不起作用

时间:2011-06-23 16:06:02

标签: javascript jquery jquery-selectors internet-explorer-7

我有几个范围输入,我必须在浏览器中保持一致,所以我使用jQuery UI滑块。问题不在于那部分,而是实际上是获得这些元素。

这是输入的外观:

<input type="range" name="..." value="..." min="..." max="..." />

使用input[type="range"]选择它们适用于除IE7之外的每次浏览(IE8都可以)。代码应该在Wordpress 3.1上运行,所以我必须使用jQuery 1.4。

我目前通过在范围输入中添加一个类来解决它,并且工作正常,但我想知道IE7中这个选择器有什么问题?

3 个答案:

答案 0 :(得分:5)

IE7及更低版本将自动转换为type="text"。试试这个,你会看到

alert($('input').attr('type')); // alerts "text"

因此您的选择器不匹配。

您可以仅为jQuery选择添加data-type而不是类

<input data-type="range" type="range" name="..." value="..." min="..." max="..." />

并使用

$('input[data-type="range"]')

答案 1 :(得分:1)

IE 7支持一组有限的attribute selectors。此外,它可能无法识别input type="range"

答案 2 :(得分:0)

像ie6这样的ie7已成为一个过时的浏览器,所以你不应该期望它支持type=range