gpt4 book ai didi

javascript - createRange 函数在除 IE 之外的其他浏览器中不起作用

转载 作者:行者123 更新时间:2023-11-28 09:52:27 26 4
gpt4 key购买 nike

我有一个文本框。当我写第一个文本时,java脚本函数将触发以检查它是否是数字。

对于 IE ,以下代码返回 -1 值,但其他浏览器不会警告任何值。请帮助我

var selected = document.selection.createRange();
var decInSel = selected.text.indexOf('.');
hasNegInSel = selected.text.indexOf('-') != -1;
alert(decInSel);

最佳答案

document.selection.createRange() 仅限 IE < 9 ...您可以使用以下函数来支持跨浏览器

function getSelectedText() {
if (window.getSelection) { // all browsers, except IE before version 9
var selectionRange = window.getSelection ();
return selectionRange.toString();
} else {
if (document.selection.type == 'None') {
return "";
} else {
var textRange = document.selection.createRange();
return textRange.text;
}
}
}

Reference here

所以你的完整代码将如下所示:

var selected = getSelectedText()
var decInSel = selected.indexOf('.');
hasNegInSel = selected.indexOf('-') != -1;
alert(decInSel);

关于javascript - createRange 函数在除 IE 之外的其他浏览器中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10683795/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com