在IE中使用jQuery UI Selectmenu插件时出错
这里演示了jQuery UI Selectmenu插件:http://jquery-ui.googlecode.com/svn/branches/labs/selectmenu/index.html
我有这个插件的一些问题。 我将专注于仅在IE中发生的一个。
我有html:
<label for="SearchState"></label>
<select style="width: 160px" name="SearchState" id="SearchState">
<option>CT</option>
<option>MA</option>
<option>NH</option>
</select>
和jQuery:
$('select#SearchState').selectmenu();
在Firefox这个工作,但是在IE中我得到负载的错误:
"Invalid argument" - jquery 1.4.2 Line: 4618
然而,新样式的selectmenu与原始样式一起出现(这是设计的,但原始html选择菜单应该隐藏),但是当我点击一个选项时,我会得到以下几个错误:
“this._optionList”为空或不是对象 - ui.selectmenu.js第400行
任何想法,为什么这不起作用在IE浏览器?
ui.selectmenu.js的399-401行
_selectedOptionLi: function() {
return this._optionLis.eq(this._selectedIndex());
},
jquery-1.4.1.js的第4615-4622行
name = name.replace(rdashAlpha, fcamelCase);
if ( set ) {
style[ name ] = value;
}
return style[ name ];
我确认了这种行为。 我在这个jsfiddle中重新创建了它。 升级jQuery到1.7.2后,它没有给出这些错误。 在这个jsfiddle是固定版本。 请注意,我还将jQuery UI(由于jsFiddle)升级到了jQuery UI 1.8.18,但问题在于您使用的jQuery版本。 我建议更新到jQuery和jQuery UI的最新(稳定)版本,以及selectmenu(JavaScript和CSS)。
你正在使用一个旧的jQuery UI 实验室插件,看起来它在一段时间内还没有被使用过。
在github上看看这个fork https://github.com/fnagel/jquery-ui。
jQuery UI的一个分支,推动开发一些插件。 目前您会发现:最新版本的Selectmenu(最初由灯丝组)和可访问的jQuery UI选项卡版本。 请检查分支选择菜单和选项卡 - 可访问性
如果您链接的演示版在IE中运行,作为第一步,我会尝试使用与演示版相同版本的selectmenu。 如果这样做,你知道这是插件的问题。
链接地址: http://www.djcxy.com/p/49751.html