javascript - 当我们更改下拉选项时,下拉选择会挂起

标签 javascript html performance internet-explorer-11 dom-events

当我们在 IE11 浏览器中更改下拉选项时,下拉选择会挂起。

但是这在其他浏览器中有效。如何解决这个问题,为什么在 IE11 中出现这个问题?

请点击下方按钮查看本期!

<!DOCTYPE html>
<html>
<body>

<form>
  <select id="mySelect" size="8">
            <option>Orange</option>
  </select>
</form>
<br>

<button type="button" onclick="myFunction()">Click</button>

<script>
function myFunction() {
    var x = document.getElementById("mySelect").options;
    x[1]=new Option;
    x[1].text=x[0].text;
    x[1].value=x[0].value;
    x[0].text='sdf';
    x[0].value='sdf';
       }
</script>

</body>
</html>

enter image description here

最佳答案

在您的脚本代码中,您正在更改已传递数组值的列表的值和文本,如下所示。

x[3].text=x[2].text
x[3].value=x[2].value

此处您获取文本 x[3] 数组并将其设置在 x[2] 中,同样您获取 x[3] 的值并分配给 x[2] 值。根据 IE11,它正在更改值和文本,但在其他浏览器中,它只更改值而不是文本。它应该像下面的代码一样设置值。

x[3].text=x[3].text
x[3].value=x[3].value

关于javascript - 当我们更改下拉选项时,下拉选择会挂起,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35394427/

相关文章:

javascript - Chromecast 从接收方向发送方发送消息

css - Mediaquery : in one CSS, 或按条件分隔?

html - 为什么放置标题时表格边框不会折叠?

c++ - 返回私有(private)类成员是否比使用结构并直接访问该变量慢?

javascript - Spark 2.0.0 - JSON 格式错误的输出

javascript - 使用 javascript 将项目向下移动到页面

javascript - 如何激活主菜单栏下方的滑动菜单栏

c++ - 埃拉托色尼筛法 - 质因数

html - 使用用户选择 : none 的 mousedown+mousemove 性能糟糕

javascript - 如何在一定时间后显示内容?