请问WebView2浏览器窗口执行脚本,怎么把结果写回quicker变量

使用问题 · 434 次浏览
~ZYS~ 创建于 2024-02-05 11:26

请问WebView2浏览器窗口执行脚本,怎么把结果写回quicker变量?

试了quickerSetVar('name'localName );

$quickerSync.setVar("text", "Hello world from js code");

都不太行。

 


回复内容
CL 2024-02-05 11:30
#1

网页和quicker是不同的进程,不支持写入到变量,需要通过执行脚本返回内容。


~ZYS~ 回复 CL 2024-02-05 11:37 :

老大,我用return 返回结果,返回的都是null,能帮忙写一个示例不,就是通过运行脚本获取了一个结果,然后把这个结果返回回来的写法

CL 回复 ~ZYS~ 2024-02-05 12:03 :

你是怎么做的呢,发截图

~ZYS~ 回复 CL 2024-02-05 12:15 :

老大我解决了,原本是让ai写了一个获取网页缩放比例的脚本,但是这个scale结果死活都返回不出来; 不过我发现只需要“document.documentElement.offsetWidth / window.innerWidth”这部分就能返回结果

function getPageScale() { // 使用 ExecuteScriptAsync 接口执行 JavaScript 代码 return window.chrome.webview.executeScriptAsync({ code: 'document.documentElement.offsetWidth / window.innerWidth' }).then(result => { // 解析返回的结果并获取缩放比例 const scale = parseFloat(result.value); return scale; // 将缩放比例值作为函数的返回值 }); }

CL 回复 ~ZYS~ 2024-02-05 12:19 :

额,ai写的代码要先分析它有没问题再用。 另外也可以在webview控制台查看有没有报错,协助分析脚本问题。

~ZYS~ 回复 CL 2024-02-05 12:20 :

好嘞,谢谢老大

回复主贴