mm.*_*mm. 17 javascript iframe selected
<html>
<body>
<script type="text/javascript">
function smth() {
if (document.getSelection) {
var str = document.getSelection();
if (window.RegExp) {
var regstr = unescape("%20%20%20%20%20");
var regexp = new RegExp(regstr, "g");
str = str.replace(regexp, "");
}
} else if (document.selection && document.selection.createRange) {
var range = document.selection.createRange();
var str = range.text;
}
alert(str);
}
</script>
<iframe id="my" width="300" height="225">
.....some html ....
</iframe>
<a href="#" onclick="smth();">AA</a>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
有smth功能我可以从一些div中获取所选文本,但它不适用于iframe.任何想法如何从iframe中获取所选文本?
bob*_*nce 17
document.getSelection
在外部文件上.要在iframe中选择文档,您需要获取内部文档:
var iframe= document.getElementById('my');
var idoc= iframe.contentDocument || iframe.contentWindow.document; // ie compatibility
idoc.getSelection()
Run Code Online (Sandbox Code Playgroud)
但请注意,WebKit不支持document.getSelection() 或 document.selection.尝试使用window.getSelection()适用于Firefox和WebKit的替换它,但返回一个选择对象(Ranges周围的集合/包装器),需要字符串:
var idoc= iframe.contentDocument || iframe.contentWindow.document;
var iwin= iframe.contentWindow || iframe.contentDocument.defaultView;
''+iwin.getSelection()
Run Code Online (Sandbox Code Playgroud)
我不确定这是什么意思:
if (window.RegExp) {
var regstr = unescape("%20%20%20%20%20");
var regexp = new RegExp(regstr, "g");
str = str.replace(regexp, "");
}
Run Code Online (Sandbox Code Playgroud)
RegExp是基本的JavaScript,可以追溯到最早的版本; 它永远存在,你不必嗅闻它.多个空格的URL编码是非常不必要的.你甚至不需要RegExp,字符串替换可以写成:
str= str.split(' ').join('');
Run Code Online (Sandbox Code Playgroud)
您需要从iframe中的文档/窗口中进行选择.
function getIframeSelectionText(iframe) {
var win = iframe.contentWindow;
var doc = win.document;
if (win.getSelection) {
return win.getSelection().toString();
} else if (doc.selection && doc.selection.createRange) {
return doc.selection.createRange().text;
}
}
var iframe = document.getElementById("my");
alert(getIframeSelectionText(iframe));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
23299 次 |
| 最近记录: |