gpt4 book ai didi

objective-c - 我的 Cocoa 应用程序如何收到 WebView 中的 onClick 事件通知?

转载 作者:太空狗 更新时间:2023-10-30 04:01:29 26 4
gpt4 key购买 nike

我正在我的 OSX 应用程序中加载一个 WebView,并希望在用户单击 WebView 中的元素时在我的应用程序中收到通知。 (WebView 正在加载一个网页,该网页是我的网络应用程序的一部分。)

这可能吗?

我能想到一种方法(轮询在 click 事件上设置的 javascript 值),但我希望有更明智的方法!

最佳答案

既然网页是您的网络应用程序,那么我假设您可以控制 html。

使用WebScript .

这是一个小演示:

Objective-C :

- (void)windowDidLoad{
[[webView windowScriptObject] setValue:self forKey:@"objcConnector"];
....
}
+ (BOOL)isSelectorExcludedFromWebScript:(SEL)aSelector{
if (aSelector == @selector(elementClicked:)) return NO;
return YES;
}
-(void)elementClicked:(id)object{
//object is the id of the element
}

HTML:

<button id="example" onClick="window.objcConnector.elementClicked_(this.id)">Click me</button>

关于objective-c - 我的 Cocoa 应用程序如何收到 WebView 中的 onClick 事件通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6053316/

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