搜索
查看: 4708|回复: 5

[behavior] [解决了]怎么阻止htmlayout打开超链接?

[复制链接]

53

主题

275

帖子

1738

积分

四级会员

Rank: 6Rank: 6

积分
1738
发表于 2012-7-20 13:02:36 | 显示全部楼层 |阅读模式
本帖最后由 winner 于 2012-7-20 13:29 编辑

import win.ui;
/*DSG{{*/
var winform = ..win.form( bottom=423;parent=...;text="aardio Form";right=713 )
winform.add(  )
/*}}*/

import web.layout
import process;


var w = web.layout(winform)
w.html =
/**
        <a href="http://www.baidu.com">点击进入百度</a>
**/

w.onHyperlinkClick =
function (ltTarget,ltEle,reason,behaviorParams) {
    process.
execute(ltEle.getAttribute("href"))
}

winform.show()
win.loopMessage();


我想实现,点击之后用IE打开超链接,
但是像上面这样写,IE打开之后,他又在当前页面跳到了百度...
回复

使用道具 举报

30

主题

693

帖子

4168

积分

超级版主

Rank: 8Rank: 8

积分
4168
发表于 2012-7-20 13:23:20 | 显示全部楼层

最好不要使用单字母变量名. [hr] [align=left][font=新宋体][color=#0000ff]import[/color][col

最好不要使用单字母变量名.  



import win.ui;
/*DSG{{*/
var winform = ..win.form( bottom=423;parent=...;text="aardio Form";right=713 )
winform.add(  )
/*}}*/

import process;
import web.layout

var wbLayout = web.layout(winform)
wbLayout.html =
/**
        <a href="http://www.baidu.com">点击进入百度</a>
**/


//在捕获模式(消息自上向下传递)下拦截消息
wbLayout.sinking = {
    onHyperlinkClick =
function (ltTarget,ltEle,reason,behaviorParams) {
        process.
execute( ltEle.href )
        
return true;//取消默认行为
    }
}

winform.show()
win.loopMessage()
回复

使用道具 举报

53

主题

275

帖子

1738

积分

四级会员

Rank: 6Rank: 6

积分
1738
 楼主| 发表于 2012-7-20 13:29:47 | 显示全部楼层

[quote][size=2][color=#999999]quicker 发表于 2012-7-20 13:23[/color] [url=forum.php

quicker 发表于 2012-7-20 13:23
最好不要使用单字母变量名.  



多谢!!!!!!!!
回复

使用道具 举报

30

主题

693

帖子

4168

积分

超级版主

Rank: 8Rank: 8

积分
4168
发表于 2012-7-20 13:48:21 | 显示全部楼层

创建一个behavior也可以 [hr] [color=#0000ff][font=新宋体]import[/font][/color][color=#000

创建一个behavior也可以


import win.ui;
/*DSG{{*/
var winform = ..win.form( bottom=423;parent=...;text="aardio Form";right=713 )
winform.add(  )
/*}}*/

import web.layout
var wbLayout = web.layout(winform)

import process;
namespace web.layout.behavior.shellLink{
    sinking = {
        onHyperlinkClick =
function (ltTarget,ltEle,reason,behaviorParams) {
            ..process.
execute( ltEle.href )
            
return true;//取消默认行为
        }
    }   
}

wbLayout.html =
/**
        <a href="http://www.baidu.com" style="behavior:~shell-link;//添加行为">点击进入百度</a>
**/


winform.show()
win.loopMessage()

回复

使用道具 举报

13

主题

34

帖子

396

积分

二级会员

Rank: 3Rank: 3

积分
396
发表于 2012-7-20 14:42:44 | 显示全部楼层

import win.ui; /*DSG{{*/ var winform = ..win.form( bottom=423;parent=...;text=

import win.ui;
/*DSG{{*/
var winform = ..win.form( bottom=423;parent=...;text="aardio Form";right=713 )
winform.add(  )
/*}}*/
import web.layout
import process;

var w = web.layout(winform)
w.html = /**
        <a href="http://www.baidu.com" target="_blank">点击进入百度</a>
**/
w.onHyperlinkClick = function (ltTarget,ltEle,reason,behaviorParams) {
    process.execute(ltEle.getAttribute("href"))
}
winform.show()
win.loopMessage();

回复

使用道具 举报

53

主题

275

帖子

1738

积分

四级会员

Rank: 6Rank: 6

积分
1738
 楼主| 发表于 2012-7-22 11:16:46 | 显示全部楼层

[quote][size=2][color=#999999]cnruby 发表于 2012-7-20 14:42[/color] [url=forum.php?

cnruby 发表于 2012-7-20 14:42
import win.ui;
/*DSG{{*/
var winform = ..win.form( bottom=423;parent=...;text="aardio Form";right=7 ...

这个也好使...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

手机版|未经许可严禁引用或转载本站文章|站长邮箱|aardio.com|aardio官方社区 ( 皖ICP备09012014号 )

GMT+8, 2020-11-29 15:32 , Processed in 0.093750 second(s), 22 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表