• 网页中点击运行执行代码


    //获取一个对象
    
    function getByid(id) {
    
        if (document.getElementById) {
    
            return document.getElementById(id);
    
        } else if (document.all) {
    
            return document.all[id];
    
        } else if (document.layers) {
    
            return document.layers[id];
    
        } else {
    
            return null;
    
        }
    
    }
    
    
    //运行框操作
    
    function creatID(DivID){
    
    var objs=getByid(DivID).getElementsByTagName('textarea');
    
    var inps=getByid(DivID).getElementsByTagName('input');
    
    var buts=getByid(DivID).getElementsByTagName('button');
    
    var labs=getByid(DivID).getElementsByTagName('label');
    
        for (i=0; i<objs.length; i++) {
    
            objs[i].id="runcode"+i;
    
            inps[i].id=i
    
            buts[i].id=i
    
            labs[i].id=i
    
        }
    
    }
    
    function runCode(obj){  //定义一个运行代码的函数,
    
          var code=getByid("runcode"+obj).value;//即要运行的代码。
    
          var newwin=window.open('','','');  //打开一个窗口并赋给变量newwin。
    
          newwin.opener = null // 防止代码对论谈页面修改
    
          newwin.document.write(code);  //向这个打开的窗口中写入代码code,这样就实现了运行代码功能。
    
          newwin.document.close();
    
    }
    
    //复制代码
    
    function doCopy(obj) {
    
        if (document.all){
    
             textRange = getByid("runcode"+obj).createTextRange();
    
             textRange.execCommand("Copy");
    
             alert("代码已经复制到剪切板");
    
        }else{
    
             alert("此功能只能在IE上有效
    
    请在文本域中用Ctrl+A选择再复制")
    
        }
    
    }
    
    //另存代码
    
    function saveCode(obj) {
    
            var winname = window.open('','','width=0,height=0,top=200,left=200px');
    
            winname.document.open('text/html', 'replace');
    
            winname.document.write(obj.value);
    
            winname.document.execCommand('saveas','','自适应宽度圆角滑动门.html');
    
            winname.close();
    
    }
     
    有了这段js,就可以在要实现代码运行功能的网页中调用了~
    调用方式代码如下参考:
    <textarea name="runcode0" rows="12" cols="95" >
    A区此处填写运行代码即可</textarea><br />
    <input type="button" value="运行代码"  onclick="runCode(runcode0)" /> 
    注意其中A填写代码是指在编辑状态下的运行代码,并非在代码状态下的代码。
    
     
    
    效果如下:
    
    <SCRIPT> 
    function Preview(obj) 
    { 
      var TestWin=open(''); 
      TestWin.document.write(obj.value); 
    } 
    function copyCode(obj) { 
        var rng = document.body.createTextRange(); 
        rng.moveToElementText(obj); 
        rng.scrollIntoView(); 
        rng.select(); 
        rng.execCommand("Copy"); 
        rng.collapse(false); 
    } 
    </SCRIPT>
    
    <TEXTAREA id="code" rows=15 cols=47>
    
    <script>
    alert('aa');
    </script>
    
    </TEXTAREA>
    <BR><BUTTON onclick=Preview(code)>运行代码</BUTTON><BUTTON onclick=copyCode(code)>复制代码</BUTTON>
  • 相关阅读:
    Docker数据卷
    Hyperloglog算法
    Greenplum6.9集群安装文档
    Java实现线程间通信方式
    计算机存储管理方式
    greenplum6.9踩坑总结
    Linux 内核参数Overcommit_memory(最近生产中Airflow和Greenplum有被这个参数坑到......)
    Airflow概念
    airflow安装文档
    基于Docker进行Zookeeper集群的安装
  • 原文地址:https://www.cnblogs.com/zhangsir/p/3571058.html
Copyright © 2020-2023  润新知