我试图在单击按钮时在文本输入中获取用户所选文本。这正是我试图:文本输入选择在IE9中不起作用
<head>
<script type="text/javascript">
function GetSelectedText() {
if (window.getSelection) { // all browsers, except IE before version 9
var range = window.getSelection();
alert (range.toString());
}
else {
if (document.selection.createRange) { // Internet Explorer
document.getElementById("foo").focus();
var range = document.selection.createRange();
alert (range.text);
}
}
}
</script>
</head>
<body>
<button onclick="GetSelectedText()">Get the selected text!</button>
<input type = 'text' id = 'foo' />12345
</body>
它将按预期在所有浏览器,除了IE9
。在IE9
中,如果您从12345
块中选择了一些文本,然后按下按钮,则所选文本会提示好。但是,如果您在文本输入中输入了某些内容,请选择其中的一部分,然后单击该按钮,即会生成空白警报。
谁能告诉我如何让它在IE9
中工作?有没有什么办法让选择开始的光标位置(如Mozilla的selectionStart
)? IAM找JavaScript的解决方案,而无需Rangy
或其他相关的jQuery库..
其实你的代码将无法在Firefox中工作,要么。 – 2013-02-25 22:54:31