相关问题
HarmonyOS 前端页面调用应用侧函数javascript可运行demo(javaScriptProxy)
1005浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在前端页面调用应用侧的函数?
924浏览 • 1回复 待解决
ArkTS web组件前端页面调用应用侧函数如何设置多个javaScriptProxy
4075浏览 • 0回复 待解决
前端页面调用应用侧函数时,提示参数类型不支持
1365浏览 • 1回复 待解决
HarmonyOS 前端页面调用应用侧函数registerJavaScriptProxy没有挂载在window上
1161浏览 • 1回复 待解决
HarmonyOS 前端页面调用应用侧函数的时候获取不到
664浏览 • 1回复 待解决
ArkWeb:前端页面调用应用侧函数是同步还是异步?
1365浏览 • 1回复 待解决
web组件中应用侧调用前端页面函数无法传递参数
1329浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙应用侧与前端页面如何进行数据通信?
969浏览 • 1回复 待解决
在应用页面里嵌套了h5页面,前端页面调用应用侧函数根据日志打印调用不到
492浏览 • 0回复 待解决
web前端页面调用应用侧函数后, promptAction.showDialog弹窗,点击按钮没有回调
1355浏览 • 1回复 待解决
HarmonyOS Web组件前端页面调用应用侧函数,在页面关闭后再次打开无法触发的问题
840浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在Node-API中实现多线程JavaScript函数调用?
1328浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何利用JavaScript Profiler中的时序火焰图进行函数调用分析?
1111浏览 • 1回复 待解决
#鸿蒙通关秘籍# 如何通过ArkWeb实现与JavaScript的交互?
2173浏览 • 1回复 待解决
#鸿蒙通关秘籍#将ArkTS前端页面完成以后,如何调用后端接口?
2083浏览 • 2回复 待解决
HarmonyOS 在h5前端侧调用应用侧方法
850浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在鸿蒙应用中使用异步Promise与前端页面进行通信?
967浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何实现页面的替换操作?
1009浏览 • 1回复 待解决
#鸿蒙通关秘籍#鸿蒙系统中如何转换Native应用信息为JavaScript对象?
920浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何通过动态路由实现页面的动态加载与模块化?
1248浏览 • 1回复 待解决
Native调用ArkTS侧类函数
2114浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何在TaskPool子线程中预加载.so库并通过句柄调用函数?
1366浏览 • 1回复 待解决
#鸿蒙学习大百科#ArkWeb如何支持与Web页面的JavaScript交互?
1165浏览 • 1回复 待解决
#鸿蒙通关秘籍#在鸿蒙应用中如何通过组件调用接口实现打印?
1127浏览 • 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 }) } } }