HarmonyOS 鸿蒙Next的web控件怎么让web里面的一些元素或者class不显示

发布于 1周前 作者 yibo5220 来自 鸿蒙OS

HarmonyOS 鸿蒙Next的web控件怎么让web里面的一些元素或者class不显示

鸿蒙的web控件怎么让web里面的一些元素id或者class不显示

2 回复

可以使用鸿蒙web组件的runJavaScript方法执行不显示的js代码即可

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-webview-V5#runjavascript

参考如下代码,已测可行


.onPageEnd(()=>{

this.webController.runJavaScript(' var div = document.getElementById("div122");\n' +

' div.style.display = "none";')

})

<!DOCTYPE html>

<html lang="zh-CN">

<head>

<meta charset="UTF-8">

<title>隐藏DIV示例</title>

<style>

#div122 {

width: 200px;

height: 100px;

background-color: lightblue;

border: 1px solid #000;

}

</style>

</head>

<body>

<button onclick="hideDiv()">隐藏DIV</button>

<div id="div122">这是一个ID为122的DIV标签。</div>

<script>

function hideDiv() {

var div = document.getElementById("div122");

div.style.display = "none";

}

</script>

</body>

</html>

更多关于HarmonyOS 鸿蒙Next的web控件怎么让web里面的一些元素或者class不显示的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS 鸿蒙Next中,你可以通过自定义WebView组件的加载行为来隐藏Web页面中的特定元素或class。具体操作可以通过注入JavaScript代码来实现。以下是简要步骤:

  1. 创建WebView组件:在布局文件中定义WebView组件,或者在代码中动态创建。

  2. 加载网页:使用WebView的loadUrl方法加载目标网页。

  3. 注入JavaScript:在WebView加载完成后,通过evaluateJavascript方法注入JavaScript代码。JavaScript代码可以使用DOM操作来隐藏特定的元素或class。例如,要隐藏所有class为"hidden-class"的元素,可以注入以下代码:

document.querySelectorAll('.hidden-class').forEach(function(element) {
    element.style.display = 'none';
});
  1. 确保权限和设置:确保WebView组件具有执行JavaScript的权限,并在设置中允许JavaScript执行。

  2. 处理回调:如果需要,可以在evaluateJavascript的回调中处理JavaScript执行的结果。

示例代码(简化):

webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("http://your-url.com");
webView.evaluateJavascript("document.querySelectorAll('.hidden-class').forEach(function(element) { element.style.display = 'none'; });", null);

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部