相关问题
 HarmonyOS  前端页面调用应用侧函数javascript可运行demo(javaScriptProxy) 
1118浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在前端页面调用应用侧的函数? 
1032浏览  • 1回复 待解决
HarmonyOS 前端页面调用应用侧函数的时候获取不到 
812浏览  • 1回复 待解决
ArkWeb:前端页面调用应用侧函数是同步还是异步? 
1475浏览  • 1回复 待解决
web组件中应用侧调用前端页面函数无法传递参数 
1599浏览  • 1回复 待解决
ArkTS web组件前端页面调用应用侧函数如何设置多个javaScriptProxy 
4345浏览  • 0回复 待解决
HarmonyOS 前端页面调用应用侧函数registerJavaScriptProxy没有挂载在window上 
1313浏览  • 1回复 待解决
前端页面调用应用侧函数时,提示参数类型不支持 
1525浏览  • 1回复 待解决
web前端页面调用应用侧函数后, promptAction.showDialog弹窗,点击按钮没有回调 
1464浏览  • 1回复 待解决
HarmonyOS Web组件前端页面调用应用侧函数,在页面关闭后再次打开无法触发的问题 
943浏览  • 1回复 待解决
在应用页面里嵌套了h5页面,前端页面调用应用侧函数根据日志打印调用不到 
1862浏览  • 1回复 已解决
#鸿蒙通关秘籍#鸿蒙应用侧与前端页面如何进行数据通信? 
1107浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在Node-API中实现多线程JavaScript函数调用? 
1467浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何利用JavaScript Profiler中的时序火焰图进行函数调用分析? 
1215浏览  • 1回复 待解决
#鸿蒙通关秘籍# 如何通过ArkWeb实现与JavaScript的交互? 
2412浏览  • 1回复 待解决
#鸿蒙通关秘籍#将ArkTS前端页面完成以后,如何调用后端接口? 
2885浏览  • 2回复 待解决
HarmonyOS  在h5前端侧调用应用侧方法 
946浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用异步Promise与前端页面进行通信? 
1097浏览  • 1回复 待解决
Native调用ArkTS侧类函数 
2367浏览  • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙系统中如何转换Native应用信息为JavaScript对象? 
1047浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何实现页面的替换操作? 
1139浏览  • 1回复 待解决
#鸿蒙学习大百科#ArkWeb如何支持与Web页面的JavaScript交互? 
1280浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何在TaskPool子线程中预加载.so库并通过句柄调用函数? 
1510浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何通过动态路由实现页面的动态加载与模块化? 
1495浏览  • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙应用中如何通过组件调用接口实现打印? 
1303浏览  • 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 }) } } }