html代码选定,检索选定文本的html代码

在做contentWindow.getSelection之前,你有鼠标事件监听器吗?

如果你这样做,你可以通过执行获得所选择的节点:

function onMouseUp(event) {

var aWindow = event.target.ownerDocument.defaultView;

// should test if aWindow is chrome area or actually content area

var contentWindow = aWindow.document instanceof Ci.nsIHTMLDocument ? aWindow : null; // i guessed here but testing if its content window is done in some similar way

if (!contentWindow) { return }

// do contentWindow.getSelection im not familiar with the code, if selection exists // check if more then one range selected then get node for each, however im going to assume only one range is selected

var nodeOfFirstRange = event.explicitOriginalTarget

var elementOfNode = nodeOfFirstRange.parentNode;

var htmlOfElement = elementOfNode.innerHTML;

}

Services.wm.getMostRecentWindow('navigator:browser').gBrowser.addEventListener('mouseup');

问题与此代码是,如果用户在内容窗口将鼠标下来,然后亮点和mouseup当鼠标内容窗口之外,像铬窗口,甚至外部浏览器(如果浏览器窗口不是最大的,或者如果在os等任务栏中的用户mousedup),所以只是使用此代码作为指导

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值