gpt4 book ai didi

javascript - 如何控制UIWebView的javascript

转载 作者:行者123 更新时间:2023-11-28 17:40:33 25 4
gpt4 key购买 nike

就是 UIWebview 和 UIView 上的切换按钮。

网页包含javascript。

我想控制 UIWebView 的 javascript。

我想要的是,只要切换 UIView 上的 Button,javascript 就会打开或关闭。

这可能吗?

如果可以,我该怎么办?很遗憾我不知道。

这是我的javascript代码:

- (void)viewDidLoad
{
[super viewDidLoad];

NSString *var = nil;
var = @"<!DOCTYPE HTML PUBLIC '-//W3C//DTD HTML 4.01 Transitional//EN' 'http://www.w3.org/TR/html4/loose.dtd'>"
"<html> "
" <head> "
" <title> New Document </title> "
"<script type='text/javascript'> "
"function colorChange(){ "
" var id=document.getElementById('yellow'); "
" var backcolor = id.style.backgroundColor; "
" "
" if (backcolor != '') "
" { "
" id.style.backgroundColor = ''; "
" }else{ "
" id.style.backgroundColor = '#ffff00'; "
" } "
" "
"} "
"</script> "
" </head> "
" <body> "
"<script type='text/javascript'> "
"</script> "
" "
"<span id='yellow' ><a href=\"javascript:void(0)\" onclick='colorChange();'><font size=12>text</font></a></span></head></html>";

[self.webView loadHTMLString:var baseURL:nil];

}

最佳答案

不要认为可以为 UIWebView 禁用 JavaScript。

但是你可以使用UIWebView的stringByEvaluatingJavaScriptFromString:方法来执行特定的JS代码,所有的JS函数等。

- (NSString *)stringByEvaluatingJavaScriptFromString:(NSString *)script;

例如:

[ self.webView stringByEvaluatingJavaScriptFromString: @"colorChange();" ];

如果您想停用您设置的 onclick(),您可以使用 stringByEvaluatingJavaScriptFromString: 设置一个全局变量,然后检查您的变量colorChange 函数。如果它有一些值(value),就做点什么,否则什么都不做。

var colorChangeEnabled = true;
function colorChange()
{
if( colorChangeEnabled == false ) return;
...

所以:

[ self.webView stringByEvaluatingJavaScriptFromString: @"colorChangeEnabled = false;" ];

关于javascript - 如何控制UIWebView的javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8325841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com