IE:document.selection
FireFox:window.getSelection()
document.selection只有IE支持,window.getSelection()也只有FireFox和Safari支持,都不是标准语法。
一个小例子
页面1:1.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>获取iframe中选中内容</title>
</head>
<script language="JavaScript">
window.onload=function()
{
document.getElementById('txt1').onclick = function(){
var strCont = '';
if(document.getElementById('content').contentWindow.document.selection)
{
strCont = document.getElementById('content').contentWindow.document.selection.createRange().htmlText;
}else{
var container = document.createElement('div');
var range = document.getElementById('content').contentWindow.getSelection();
container.appendChild(range.getRangeAt(0).cloneContents());
strCont = container.innerHTML;
}
alert('选中的html为:'+strCont);
}
}
</script>
<body>
<input type="button" value='显示内容' id="txt1">
<iframe name='content' id='content' src="2.html"></iframe>
</body>
</html>
页面2:2.html
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>iframe内容页面</title>
</head>
<body>
这里是以在IE中获取用户选择的这里是以在IE中获取用户选择的这里是以在IE中获取用户选择的这里是以在IE中获取用户选择的<br>
这里是以在IE中获取用户选择的
</body>
</html>
分别在IE和FF下运行页面1.html,可以看到弹出的内容包含html标签