首页 > Web开发 > 详细

网页中点击运行执行代码

时间:2014-02-28 04:20:51      阅读:528      评论:0      收藏:0      [点我收藏+]
bubuko.com,布布扣
//获取一个对象

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上有效\n\n请在文本域中用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>
bubuko.com,布布扣

网页中点击运行执行代码,布布扣,bubuko.com

网页中点击运行执行代码

原文:http://www.cnblogs.com/zhangsir/p/3571058.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!