点击选择Div不能在IE上运行

时间:2016-05-13 05:42:51

标签: javascript css

我有一个代码用于点击选择所有文字。但不幸的是没有在IE上工作。任何人都可以解决这个问题。

需要修复所有兼容的浏览器。

此脚本正在IE 9.0下运行。不适用于IE 10及更高版本。请好好解决。

代码:

<!DOCTYPE html>
<html>
<head>
<title>autoresizing textarea</title>
<style type="text/css">
#divid {
    display:inline-block;
    border: solid 1px #000;
    min-height: 20px;
    width: 300px;
}
</style>
<script type="text/javascript">
 function selectText(containerid) {
        if (document.selection) {
            var range = document.body.createTextRange();
            range.moveToElementText(document.getElementById(containerid));
            range.select();
        } else if (window.getSelection) {
            var range = document.createRange();
            range.selectNode(document.getElementById(containerid));
            window.getSelection().addRange(range);
        }
    }
</script>

</head>
<body>

<div id="divid" onclick="selectText('divid')">Lorem Ipsum is simply dummy text of the printing and typesetting industry. </div>

<div>
                                                    Lorem Ipsum is simply dummy text &nbsp;</div>




</body>
</html>

1 个答案:

答案 0 :(得分:1)

如果您只想选择div中包含的所有文字,请点击...
只需删除所有旧脚本并更改div声明:

<div id="divid" onclick="this.select();">

它与浏览器兼容。



-----
修改

您问题中脚本的问题在于它依赖于selection对象,自Explorer 11以来不推荐使用该对象。请参见:https://msdn.microsoft.com/en-us/library/ms535869(v=vs.85).aspx

MSDN建议将其“替换为”getSelection,但指向它的链接会导致弃用selection对象的方法。所以...

无论如何,选择全部是不是很复杂?