Javascript jQuery代码在v1.8.3中不再工作

Javascript jQuery代码在v1.8.3中不再工作,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我正在关注一个jQuery,它的代码似乎可以很好地与jQuery 1.4.3配合使用,但我需要它来与jQuery 1.8.3配合使用 jsfiddle: 问题:当我将使用的jQuery版本切换到1.8.3版时,在将className替换为class后,Result窗格中显示的选择框中没有任何文本 jsfiddle进行更改后: 我还遗漏了哪些其他更改?1.4和1.6之间的一个更重要的更改是使用了attr()方法,并引入了prop()方法,用于非真正属性的属性 selectedIndex将被视为属性

我正在关注一个jQuery,它的代码似乎可以很好地与jQuery 1.4.3配合使用,但我需要它来与jQuery 1.8.3配合使用

jsfiddle:

问题:当我将使用的jQuery版本切换到1.8.3版时,在将
className
替换为
class
后,
Result
窗格中显示的选择框中没有任何文本

jsfiddle进行更改后:


我还遗漏了哪些其他更改?

1.4和1.6之间的一个更重要的更改是使用了
attr()
方法,并引入了
prop()
方法,用于非真正属性的属性

selectedIndex
将被视为属性而不是属性。对于
attr('selectedIndex')
,您的代码正在返回
undefined
。改用
prop('selectedIndex')


演示:

您正在学习的教程既糟糕又过时

删除此条件:

if(i==select.attr('selectedIndex')){
          selectBox.html(option.text());
      }
在循环之前添加以下内容:

selectBox.html(select.find('option:selected').text());


本教程不好,因为它在html的非标准属性上使用了
attr
,而且正如他们所知,1.4.2引入了
data()
方法,其中包括了这一点。好。另外,在
select
中选择的每个
选项
都有
selected
属性,因此我不理解在存在标准属性时使用自定义属性的原因。

更新的小提琴有什么不正确的地方?对我来说,它显示下拉列表。。。只有样式/图像不正确我在
中看不到任何文本。你是说加载之后?页面上的所有内容加载后,我看到
#selectBox
的背景,但里面没有文本。jQuery内置于JSFIDLE中,你知道。在
body
窗格中包含
jQuery
时,将jsiddle设置为
Mootools
可能会让其他人感到困惑。