Javascript 输入[类型=“范围”]选择器为';我不在IE7工作

Javascript 输入[类型=“范围”]选择器为';我不在IE7工作,javascript,jquery,jquery-selectors,internet-explorer-7,Javascript,Jquery,Jquery Selectors,Internet Explorer 7,我有几个范围输入,我必须在不同浏览器之间保持一致,所以我使用jqueryui滑块。问题不在于这一部分,而在于获取这些元素 这就是输入的外观: <input type="range" name="..." value="..." min="..." max="..." /> 使用input[type=“range”]选择它们在除IE7之外的每次浏览中都有效(IE8也可以)。代码应该在WordPress3.1上运行,所以我必须使用jQuery1.4 我目前通过向范围输入添加一个类来

我有几个范围输入,我必须在不同浏览器之间保持一致,所以我使用jqueryui滑块。问题不在于这一部分,而在于获取这些元素

这就是输入的外观:

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

使用
input[type=“range”]
选择它们在除IE7之外的每次浏览中都有效(IE8也可以)。代码应该在WordPress3.1上运行,所以我必须使用jQuery1.4


我目前通过向范围输入添加一个类来解决这个问题,效果很好,但我想知道IE7中的这个选择器有什么问题?

IE7支持有限的一组输入。此外,它可能无法识别
input type=“range”

IE 7支持有限的一组输入。此外,它可能无法识别
input type=“range”

类似ie7的ie6已经成为过时的浏览器,因此您不应该期望它支持
type=range

类似ie7的ie6已经成为过时的浏览器,因此您不应该期望它支持
type=range

ie7及其更低版本将自动转换为
type=“text”
。试试这个,你会看到的

alert($('input').attr('type')); // alerts "text"
因此,您的选择器不匹配

您可以添加
数据类型
,而不是仅用于jQuery选择的类

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

IE7和更低版本将自动转换为
type=“text”
。试试这个,你会看到的

alert($('input').attr('type')); // alerts "text"
因此,您的选择器不匹配

您可以添加
数据类型
,而不是仅用于jQuery选择的类

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