相关问题
HarmonyOS 前端页面调用应用侧函数javascript可运行demo(javaScriptProxy)
756浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在前端页面调用应用侧的函数?
742浏览 • 1回复 待解决
ArkWeb:前端页面调用应用侧函数是同步还是异步?
1104浏览 • 1回复 待解决
HarmonyOS 前端页面调用应用侧函数的时候获取不到
483浏览 • 1回复 待解决
web组件中应用侧调用前端页面函数无法传递参数
950浏览 • 1回复 待解决
ArkTS web组件前端页面调用应用侧函数如何设置多个javaScriptProxy
3749浏览 • 0回复 待解决
HarmonyOS 前端页面调用应用侧函数registerJavaScriptProxy没有挂载在window上
908浏览 • 1回复 待解决
前端页面调用应用侧函数时,提示参数类型不支持
1189浏览 • 1回复 待解决
web前端页面调用应用侧函数后, promptAction.showDialog弹窗,点击按钮没有回调
1168浏览 • 1回复 待解决
HarmonyOS Web组件前端页面调用应用侧函数,在页面关闭后再次打开无法触发的问题
627浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙应用侧与前端页面如何进行数据通信?
728浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在Node-API中实现多线程JavaScript函数调用?
1071浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何利用JavaScript Profiler中的时序火焰图进行函数调用分析?
896浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何通过ArkWeb实现与JavaScript的交互?
1713浏览 • 1回复 待解决
#鸿蒙通关秘籍#将ArkTS前端页面完成以后,如何调用后端接口?
1529浏览 • 2回复 待解决
HarmonyOS 在h5前端侧调用应用侧方法
648浏览 • 2回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用异步Promise与前端页面进行通信?
730浏览 • 1回复 待解决
Native调用ArkTS侧类函数
1798浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙系统中如何转换Native应用信息为JavaScript对象?
717浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现页面的替换操作?
685浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过动态路由实现页面的动态加载与模块化?
938浏览 • 1回复 待解决
#鸿蒙学习大百科#ArkWeb如何支持与Web页面的JavaScript交互?
955浏览 • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙应用中如何通过组件调用接口实现打印?
771浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在TaskPool子线程中预加载.so库并通过句柄调用函数?
1079浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙应用和页面生命周期函数使用详解
1100浏览 • 1回复 待解决
可以通过
runJavaScript()
方法在应用侧调用前端页面的JavaScript函数。以下是实现步骤:在前端页面的HTML代码中定义需要调用的JavaScript函数。
html <!-- index.html --> <!DOCTYPE html> <html> <body> <button type="button" onclick="callArkTS()">Click Me!</button> <h1 id="text">这是一个测试信息,默认字体为黑色</h1> <script> function htmlTest() { document.getElementById('text').style.color = 'green'; } function callArkTS() { changeColor(); } function changeColor() { document.getElementById('text').style.color = 'red'; } </script> </body> </html>
在应用侧,通过
webviewController.runJavaScript('htmlTest()')
调用该JavaScript函数。typescript // xxx.ets import { webview } from '@kit.ArkWeb';
@Entry @Component struct WebComponent { webviewController: webview.WebviewController = new webview.WebviewController();
build() { Column() { Button('runJavaScript') .onClick(() => { this.webviewController.runJavaScript('htmlTest()'); }) Button('runJavaScriptCodePassed') .onClick(() => { this.webviewController.runJavaScript(
function changeColor(){document.getElementById('text').style.color = 'red'}
); }) Web({ src: $rawfile('index.html'), controller: this.webviewController }) } } }