<html>  
<body>
test
<script language="JavaScript">  
if(window.getSelection){
//此处ff和google里如何搞?
}else if(document.selection){
var myRange = document.selection.createRange();
myRange.pasteHTML('<iframe width=100 height=100 src="http://localhost/t2.htm"></iframe>');
//IE这个是成功的
}
</script>
</body>
</html>如上:firefox和google浏览器里无法实现类似IE里的pasteHTML嵌入iframe,测试了很多ff和ga都不行,哪位高手可以解决?万分感谢。

解决方案 »

  1.   

    reference
      

  2.   

    pasteHTML is supported by IE
      

  3.   

    <head>
        <script type="text/javascript">
            function GetSelectedText () {
                if (window.getSelection) {  // all browsers, except IE before version 9
                    var range = window.getSelection ();                                        
                    alert (range.toString ());
                } 
                else {
                    if (document.selection.createRange) { // Internet Explorer
                        var range = document.selection.createRange ();
                        alert (range.text);
                    }
                }
            }
        </script>
    </head>
    <body>
        <button onclick="GetSelectedText ()">Get the selected text!</button>
        Select some text!
    </body>
    但是ff,gg如何实现.pasteHTML的功能呢?
      

  4.   

    http://apps.hi.baidu.com/share/detail/31670561
    http://blog.163.com/service80@126/blog/static/16193603020103982754323/
      

  5.   


    var range = window.getSelection().getRangeAt(0);
    var divNode=document.createElement("div");
    divNode.innerHTML='<iframe width=100 height=100 src="http://localhost/t2.htm"></iframe>';
    range.insertNode(divNode.firstChild);
      

  6.   

    仔细研究下 w3c 的 Range 对象吧
      

  7.   

    <html>
    <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
    <body>
    if(window.getSelection){return window.getSelection().toString();}
    else if(document.getSelection){return document.getSelection();}
    else if(document.selection){return document.selection.createRange().text;}
    <script language="JavaScript">
    function getSelectionText() {
    if(window.getSelection) {
    return window.getSelection().toString();
    } else if(document.selection && document.selection.createRange) {
    return document.selection.createRange().text;
    }
    return '';

    function test() {
    if (document.selection && document.selection.createRange) {
         var myRange = document.selection.createRange();
         var m = myRange.pasteHTML('<iframe width=100 height=100 src="http://localhost/t2.htm"></iframe>');
    }
    else if (window.getSelection) {
        var selection = window.getSelection();
    var range = window.getSelection().getRangeAt(0);
       range.deleteContents();
    var newP = document.createElement('iframe');
    newP.src="http://localhost/t2.htm";
    newP.width="100"; 
    newP.height="100";  
    range.insertNode(newP);
    }
    }</script>
    <p>Highlight a part of this text, then click button below</p>
    <input id="myB" type="button" value="Click me" onclick="test();">
    </body>
    </html>