通过js创建一个select元素,焦点在IE中不起作用

时间:2009-10-12 18:44:16

标签: internet-explorer focus mootools html-select

我是js的新手,我担心我没有解决下一个问题的知识。

如果我在加载时已经由浏览器解析了一个select元素(填充了几个选项),那么下一个代码在IE和FF中都可以正常工作

$('selectId').focus();

但是如果我通过js

创建(并填充)元素
var select = new Element('select',{ 'id':'selectId' });
~ etc. with options ~
select.focus();

焦点事件在IE中不起作用。用FF就一切都好!

我已经尝试了各种方法来解决这个问题,但没有取得好成绩! 每次我需要点击元素来激活焦点事件(在IE中)。

(是的,我使用mootools库!)

任何帮助将非常感谢!

谢谢!

1 个答案:

答案 0 :(得分:0)

@Christoff 谢谢,我的朋友! 我担心我必须使用mootools的ver 1.11,因为该项目是基于最新版本的Joomla(1.5.14),仅支持1.11 mootools ... 我试图在创建元素之后立即调用click事件(正如您在示例中所做的那样)并且它似乎工作,而不是100%,但是有效。 唯一的问题是,如果您单击FIRST选项,在选择出现后,您将获得预先选择的警报!如果单击任何其他选项,警报将返回正确的值!奇怪! (我总是谈论IE7-8浏览器!)

另外,我将代码从mooshel复制粘贴到jsbin.com(http://jsbin.com/axuxi),似乎也有同样的问题。第一次单击始终返回预先选择的值...

感谢您的帮助!