1

我需要基于 HTML 选择生成一个非常漂亮的下拉表单元素。我能找到的最好的(最适合这个项目)是这个:http ://demo.tutorialzine.com/2010/11/better-select-jquery-css3/select-jquery.html 。它通过将 HTML 元素替换为具有良好样式和动画效果的自定义标记来工作。都好。

但是,它不适用于较新版本的 jQuery。我设置了一个小提琴http://jsfiddle.net/VTTyu/,它显示了它的作用。它适用于 jQuery 1.4.4,但是当您将其更改为使用 jQuery 1.7.2(我在项目的其他地方使用)时,它停止工作。

我知道我可以通读过去 18 个月中每个 jQuery 版本的发行说明,并尝试确定导致此问题的可能变化,但我想知道是否有经验更丰富的人可以识别问题?

任何指针/建议将不胜感激,谢谢大家。

编辑:在 fiddle 上进行更多测试后,它似乎可以使用 jQuery 到 1.5.2,但之后的任何版本和下拉按钮都会从页面中消失。

4

3 回答 3

3

className用(quotes too)替换 (twice)'class'并看到奇迹发生。

于 2012-09-06T10:11:38.780 回答
3

的用途attr被改变了,所以

select.attr('selectedIndex')

相反,不会在 1.6 之后工作;

select.prop('selectedIndex')

见评论.prop

于 2012-09-06T10:13:25.817 回答
2

.attr()jQuery 1.6 起不再支持获取 DOM 对象属性。所以使用该.prop()方法代替这一行if(i==select.prop('selectedIndex')){ }

看到这个更新.attr()

于 2012-09-06T10:17:52.927 回答