webview中网页调用js出错

binggan90du 2012-07-03 04:13:44
webview中加载网页,网页A中的有一个window.open();
在新打开的窗口B里,调用A的js方法,
报如下错误:
Uncaught TypeError: Object [object DOMWindow] has no method "",
那位大侠遇到过,
求解。。。。。。。
...全文
462 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
天外野草 2013-04-19
  • 打赏
  • 举报
回复
你好,请问怎么解决的啊,能帮帮我吗
binggan90du 2012-07-06
  • 打赏
  • 举报
回复
现在解决了。。。。。。。。。
Darcy杨 2012-07-04
  • 打赏
  • 举报
回复
确认下面几件事

1. 支持Javascript:WebView.getSettings().setJavaScriptEnabled(true);

2. 支持多窗口:WebView.getSettings().setSupportMultipleWindows(true);

3. 设置了WebChromeClient:WebView.setWebChromeClient(new WebChromeClient() {});

4. WebChromeClient重写了 onCreateWindow 方法
binggan90du 2012-07-04
  • 打赏
  • 举报
回复
哦哦,我说的浏览器也是手机上的
binggan90du 2012-07-04
  • 打赏
  • 举报
回复
public boolean onCreateWindow(WebView view, boolean dialog,
boolean userGesture, Message resultMsg) {
WebView childView = new WebView(TestWebView.this);
final WebSettings settings = childView.getSettings();
settings.setJavaScriptEnabled(true);
childView.setWebChromeClient(this );
WebView.WebViewTransport transport = (WebView.WebViewTransport) resultMsg.obj;
transport.setWebView(childView);
resultMsg.sendToTarget();

return true;
}
这样写,对的吗??
现在可以触发这个方法了,但是页面出不来,请问是哪里出错了
AMinfo 2012-07-03
  • 打赏
  • 举报
回复
在同一个webView里面,A打开B后,A就不存在了,所以在B里面就不能用A的东西。


电脑上的浏览器,例如IE,你在A打开B后,A是还会存在的,也就存在了2个窗口。


你如果想要实现电脑浏览器的功能,必须去判断脚本动作,要打开新窗口时要再新建一个webView。
binggan90du 2012-07-03
  • 打赏
  • 举报
回复
用浏览器打开这个网页是没有问题的,但是用webview加载就会这样
binggan90du 2012-07-03
  • 打赏
  • 举报
回复
用浏览器打开这个网页是没有问题的,但是用webview加载就会这样
AMinfo 2012-07-03
  • 打赏
  • 举报
回复
在一个webView里面用open后还是只有一个webView,不会再新增一个webView。

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧