gpt4 book ai didi

javascript - 以编程方式选择文本 Mobile Safari

转载 作者:行者123 更新时间:2023-11-30 06:39:43 25 4
gpt4 key购买 nike

我在选择网站上的文本时遇到问题。我有一个 div block ,希望在 iPhone/Android 上触摸 div block 时选择里面的所有文本。到目前为止,我已经在以下位置尝试过该方法:Selecting text in mobile Safari on iPhone

像这样:

<div ontouchstart="this.selectionStart=0; this.selectionEnd=this.value.length;">

我还尝试根据不同来源的建议在我的 JS 文件中创建一个函数来执行此操作:

HTML

<div ontouchstart="touchStart(event, this);>

JS

function touchStart(event, obj) {
var range = window.getSelection();
var sel = window.getSelection()

range.setStart(obj, 0);
range.setEnd(obj, obj.innerHTML.length);
sel.removeAllRanges();
sel.addRange(range);
//range.execCommand("BackColor", false, colour);
}

到目前为止,这两种方法似乎都行不通。在 iPhone 上的 Safari 上测试时,我使用第二种方法似乎遇到的一个错误是:

JavaScript: Error undefined TypeError: 'undefined' is not an object

最佳答案

selectionStartselectionEnd 只是文本区域和文本输入的属性,所以它们不在了。 Mobile Safari 与所有其他主要浏览器具有相同的选择 API,但您只能影响已经显示的可见选择。

HTML:

<div ontouchstart="selectElementContents(this);">

JS:

function selectElementContents(el) {
var sel = window.getSelection();
var range = document.createRange();
range.selectNodeContents(el);
sel.removeAllRanges();
sel.addRange(range);
}

关于javascript - 以编程方式选择文本 Mobile Safari,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12360910/

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