响应本地webview javascript模拟点击

cxfofazt  于 2022-10-30  发布在  Java
关注(0)|答案(3)|浏览(171)

你好,我使用Tidio进行实时聊天,我把它放在我的React Native应用程序使用webview
看起来像是

然后它需要点击聊天图标打开聊天框,就像

那样
我希望它直接打开聊天框而不是显示欢迎消息,
我尝试使用injectedJavaScript,但它不起作用

<WebView
        javaScriptEnabled={true}
        injectedJavaScript={`(function() { document.getElementById('button-body').click()})();`}
        source={{
          uri: 'https://www.tidio.com/talk/ekmt9gtdgbc4rou29f7tuwvpbhcotzmx'
        }}
      />
wgx48brx

wgx48brx1#

使用WebView,您可以找到一个按钮,并通过加载一个URL来单击它,但在您的情况下,您所做的错误是您找到了一个从iframe加载的按钮,并试图单击它,这是不可能的。
如果你真的不想显示第一页,用你自己的文本替换屏幕上的文本,比如你可以把welcome to iLampagency.com替换成Hi welcome to chat bot之类的东西。
希望这对你有帮助!

wmvff8tz

wmvff8tz2#

检查tidio Api... Api支持它... tidio.open()

o3imoua4

o3imoua43#

我找到了一个快速修复它创建一个html文件,如下所示
HTML程式码👇🏻

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Tidio chat app</title>
  </head>
  <body>
    <script
      src="your tidiojs script.js"
      async
    ></script>
    <script>
      window.addEventListener('load', () => {
        tidioChatApi.open();
      });
    </script>
  </body>
</html>

然后将这个静态html放在某个地方,并使用react-native-webview在您reactnative中使用该url,
React原生web视图示例代码👇🏻

<WebView
 source={{uri: 'your html hosted url'}}
/>

它将直接打开聊天框。

相关问题