Opera 11.50 2个BUG

首先,我的操作系统是 Windows 2003 R2 ENT SP2(11年8月份的补丁还没打,但至少下面这SELECT的BUG是我上个月就发现的,所以和系统补丁无关)
Opera版本是 11.50 1074
下面这是一个SELECT的BUG,一般捕获SELECT控件的变化都是用onchange的吧??为了避免用户重复选择,一般会这样的吧??
obj.disabled = true;
// dosomething...
obj.disabled = false;
看下面代码吧

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>SELECT BUG</title>
    <script type="text/javascript" language="javascript">
      // <![CDATA[
      function bug(obj) {
        obj.disabled = true;
        document.getElementById("console").innerHTML = obj.selectedIndex;
        obj.disabled = false;
      }
      // ]]>
    </script>
  </head>
  <body>
    <select id="sbug" style="width:50px;" onchange="bug(this)">
      <option value="1">1</option>
      <option value="2">2</option>
      <option value="3">3</option>
    </select>
    <div id="console"></div>
  </body>
</html>

当你选择任意一个option的时候,你会发现下拉框并没有消失...你可以继续选其他的option,但此时select的真实selectedIndex是你第一次选的那个option...
如果你是选择完option后,马上鼠标点击页面上其他地方,此时...虽然selectedIndex还是第一次选的option,但......看上去选择的却是空白...说那么多,还不如直接一幅动态截图来得直接,看图


下一个BUG...
关于动态创建INPUT控件的问题
input type=[image|button],如果value属性在type属性设置前就已经设置了,则在设置type属性后,value属性会被重置为"",看代码

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>INPUT TYPE=[IMAGE|BUTTON] BUG</title>
    <script type="text/javascript" language="javascript">
      // <![CDATA[
      window.onload = function() {
        var o = document.createElement("INPUT");
        o.value = "BUG?";
        o.type = "image";
        o.type = "button";
        //o.value = "NORMAL";
        document.body.appendChild(o);
        alert(document.getElementsByTagName("INPUT")[0].value);  // ""
      };
      // ]]>
    </script>
  </head>
  <body>
  </body>
</html>

其实呢...第一个BUG我上个月就提交给OPERA了...但无奈...到底是我E文太差描述不清楚,还是OPERA认为这根本就不算BUG呢??因为我还没在BUG列表上看到关于这个BUG的描述...而第二个BUG...今天发现的...也提交给OPERA了...
当然,第二个BUG完全是得闲没事做才会那样写(主要是我封装的动态创建NODE函数中,属性是用Object装载的,用for in的时候是无法指定顺序的,所以有时候value很不幸的比type还早设置...)

posted @ 2011-08-12 17:25  consatan  阅读(329)  评论(1编辑  收藏  举报