首页 新闻 会员 周边 捐助

webbrowser中超链接的click事件如何执行

0
悬赏园豆:80 [已关闭问题] 关闭于 2014-04-28 17:26

情况如下:

1.如果是 <a href="asdf.html'></a>这个可以跳到指定的页面;

2.但是如果是<a href='#' onclick='gotoURL("url")></a>' 这就不行了,跳转的页面还是当前页,请问一下,这中情况如何处理?

问题补充:

我是用webbrowser将其他网站的网页嵌套进来,我不可能更改别的网页。只能捕获他们的事件。 现在就是如果超链接中有onclick事件,那么页面就跳转不过去了

Mr.H的主页 Mr.H | 初学一级 | 园豆:126
提问于:2014-03-17 17:53
< >
分享
所有回答(4)
0

<a href='#' onclick='gotoURL("url") return;'></a>

 

lingjie-qiu | 园豆:1 (初学一级) | 2014-03-17 18:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
    <title>Untitled Page</title>
    <script>
        function gotoURL() {
            var r = "http://www.baidu.com";
            window.open(r);
      
      }
    </script>
</head>
<body>
<a href='#' onclick='gotoURL(); return;'>aaa</a>

</body>
</html>
支持(0) 反对(0) lingjie-qiu | 园豆:1 (初学一级) | 2014-03-17 18:10
0

贴下gotoURL()这个函数的实现

幻天芒 | 园豆:37207 (高人七级) | 2014-03-18 08:56

gotoURL()这个方法我只是举个例子(例如gotoURL(){跳转到www.baidu.com})。 因为对于第二种情况,我用webbrowser.stastuText得到的URL始终是asdf.html# .无法实现真正跳转到想要达到的页面(www.baidu.com)。

支持(0) 反对(0) Mr.H | 园豆:126 (初学一级) | 2014-03-18 09:04

@Mr.H: - -不明觉厉啊  你的gotoURL()怎么写的

支持(0) 反对(0) lingjie-qiu | 园豆:1 (初学一级) | 2014-03-18 09:12

@Mr.H: 对于浏览器控件中的脚本执行,确实不好拦截。我记得博客园中有重写WebBrower控件的示例,在处理捕获跳转事件,你得查查了。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-03-18 10:04

@||Timmy: 

刚我测试了一下,gotoURL可以执行。不好意思。

我的问题是这样的,有一个a.htm,嵌套在了webbroswer(WB1)中。

<html>
    <head>
        <title></title>
        <script type="text/javascript">
            function test() {
                window.open(“http://www.baidu.com”);
            }
        </script>
    </head>
    <body>
    <a href="#"  onclick="test()">asdf</a>
    </body>
</html>

我现在想点击这个链接,让新开窗口在一个新的webborswer(WB2)中呈现,该如何实现啊?

如果我用WB2.nagetive(URL)这个方法,如何获取到JS中的那个“http://www.baidu.com”这个网址呢?

因为WB1.STATUTEXT是"a.htm#".

支持(0) 反对(0) Mr.H | 园豆:126 (初学一级) | 2014-03-18 10:13
0

在gotoURL这个方法中首先要执行的是取消a标签点击事件的默认操作,这样就不会执行默认的跳转了、

e.preventDefault();

Zux | 园豆:495 (菜鸟二级) | 2014-03-18 10:27
0

直接调用方法

[秦时明月] | 园豆:738 (小虾三级) | 2014-03-19 09:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册