如何将 javascript 变量文本复制到剪贴板?
How to copy javascript variable text to clipboard?
我正在使用 CefSharp 构建网络浏览器,并且我正在集成一些 javascript 按钮点击等
我正在尝试通过 class 名称获取元素,然后将其文本保存到剪贴板。
它成功找到了一个元素和文本,但是无论如何我都无法将它设置到剪贴板。
这是代码
private void button3_Click(object sender, EventArgs e)
{
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("var elems1 = document.getElementsByClassName('question-text')");
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("textt = elems1[elems1.length - 1].innerText");
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("navigator.clipboard.writeText(textt);");
}
它说文档没有聚焦,但我尝试使用
聚焦它
textt.focus();
或
elems1.focus():
它 returns“textt.focus(); 不是函数”或“elems1.focus(): 不是函数”
尝试 运行 上的所有内容
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("const element = document.createElement('textarea'); element.value = document.getElementsByClassName('question-text')[0].innerText; document.body.appendChild(element); element.select(); document.execCommand('copy'); document.body.removeChild(element);");
如果它仍然没有显示焦点,请尝试将焦点也添加到其中。
我正在使用 CefSharp 构建网络浏览器,并且我正在集成一些 javascript 按钮点击等
我正在尝试通过 class 名称获取元素,然后将其文本保存到剪贴板。
它成功找到了一个元素和文本,但是无论如何我都无法将它设置到剪贴板。
这是代码
private void button3_Click(object sender, EventArgs e)
{
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("var elems1 = document.getElementsByClassName('question-text')");
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("textt = elems1[elems1.length - 1].innerText");
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("navigator.clipboard.writeText(textt);");
}
它说文档没有聚焦,但我尝试使用
聚焦它textt.focus();
或
elems1.focus():
它 returns“textt.focus(); 不是函数”或“elems1.focus(): 不是函数”
尝试 运行 上的所有内容
CurBrowser.GetMainFrame().ExecuteJavaScriptAsync("const element = document.createElement('textarea'); element.value = document.getElementsByClassName('question-text')[0].innerText; document.body.appendChild(element); element.select(); document.execCommand('copy'); document.body.removeChild(element);");
如果它仍然没有显示焦点,请尝试将焦点也添加到其中。