如何在 iOS 中更改 webview 中按钮的背景颜色

How to change the background color of a Button inside a webview in iOS

我有一个 WebView 加载一个 URL(比如 login.salesforce.com)并要求用户登录到他的实例。

现在,我想摆脱它显示的默认登录屏幕,并想尝试一下登录按钮的颜色。

是否可以更改在 UIWebViewWKWebView 中加载的网站内按钮的颜色?

如果您使用自定义 NSURLProtocol 覆盖资源加载并加载您自己的 CSS 而不是他们的,则可以使用 UIWebView 来完成。 "evaluateJavaScript" 如果您等到页面以某种方式加载(请参阅其他回复),也可能会起作用。

很可能你的要求违反了 Salesforce 的服务条款,所以我不会这样做。

如果他们有一个 REST API 用于您尝试实现的目标,那么您可以提供自己的 UI。

绝对是。为此,您需要对 html、css 和 java 脚本有一点了解。

第 1 步。准备一个 java 脚本作为如下字符串:

let changeHtmlbuttonScript = """
var property = document.getElementById(btn);
if (count == 0) {
  property.style.backgroundColor = "#FFFFFF"
  count = 1;
} else {
  property.style.backgroundColor = "#7FFF00"
  count = 0;
}
"""

第 2 步:在您当前的网络视图上评估 java 脚本

self.webView.evaluateJavaScript(self.changeHtmlbuttonScript)