如果没有选择文本,如何确定浏览器是否支持selectionStart

时间:2010-06-23 22:10:41

标签: dom textselection

如果浏览器支持 selectionStart 并且选择了某些文本,则此代码将返回 true ,但如果未选择任何文本,则返回false(即使在支持它的浏览器上) :

   if (el.selectionStart) {

  }

无论是否选择了文字,您如何确定该属性是否可用?

由于

2 个答案:

答案 0 :(得分:2)

进一步的谷歌搜索显示答案:

 if (el.selectionStart != undefined) {

 }

答案 1 :(得分:0)

希望这会对你有所帮助。我在旧的Android 4.2(返回false)和Chrome(返回true)上测试了它。

function selectionSupport() {
    var input = document.createElement("input");
    input.setAttribute('value', '111');
    input.selectionStart = 1;
    input.selectionEnd = 2;
    return (input.selectionStart === 1 && input.selectionEnd === 2);
}

var selectionIsSupported = selectionSupport();