网络编程 
首页 > 网络编程 > 浏览文章

纯js实现的论坛常用的运行代码的效果

(编辑:jimmy 日期: 2026/11/3 浏览:3 次 )
用的时候把runcode.js放到网站目录,在需要运行代码的效果的地方放如下的代码
复制代码 代码如下:
<div style="margin-top: 1em; margin-bottom: 1em"><div style="display:none">{1}</div><textarea rows="12" cols="95" style='font-family:"Courier New",Courier,monospace;'></textarea><script src="/UploadFiles/2021-04-02/runcode.js">
就可以了。
runcode.js文件
复制代码 代码如下:
//Scripts runcode for BBS ver 2008-06-30, by Bound0(bound0@veryhman.com)
//First published at http://bbs.blueidea.com
//An example: http://bbs.veryhman.com/showtopic-20094.aspx

function runCode(which) {
    var p=which.parentNode;
    var os=p.getElementsByTagName("textarea");
    if(os.length==0)return;
    var o=os[0];
        var winname = window.open('', "_blank", '');
        winname.document.open('text/html', 'replace');
        winname.opener = null;
        winname.document.write(o.value);
        winname.document.close();
}
function saveCode(which) {
    var p=which.parentNode;
    var os=p.getElementsByTagName("textarea");
    if(os.length==0)return;
    var o=os[0];
        var winname = window.open('', '_blank', 'top=10000');
        winname.document.open('text/html', 'replace');
        winname.document.write(o.value);
        winname.document.execCommand('saveas','','code.htm');
        winname.close();
}
function copycode(which) {
    var p=which.parentNode;
    var os=p.getElementsByTagName("textarea");
    if(os.length==0)return;
    var o=os[0];
    var is_ie = (userAgent.indexOf('msie') != -1 && !is_opera) && userAgent.substr(userAgent.indexOf('msie') + 5, 3);
    if(is_ie && o.style.display != 'none') {
        var rng = document.body.createTextRange();
        rng.moveToElementText(o);
        rng.scrollIntoView();
        rng.select();
        rng.execCommand("Copy");
        rng.collapse(false);
    }
}
function text(e)
{
    var t = "";
    e = e.childNodes || e;
    for ( var j = 0; j < e.length; j++ )
    {

        if(e[j].nodeType != 1){t+=e[j].nodeValue}
        else
        {
            var k=e[j].nodeName;
            if(k=='BR'||k=='P'){t+='\r\n'}
            t+=text(e[j].childNodes)
        }
    }
    return t;
}
function preCode(which) {
    var p=which.parentNode;
    var os=p.getElementsByTagName("textarea");
    if(os.length==0)return;
    var o=os[0];
    var osv=p.getElementsByTagName("div");
    if(osv.length==0)return;
    var ov=osv[0];
    var c=''
    if(typeof(ov.innerText)!="undefined"){c=ov.innerText}else{c=text(ov)}
    o.value=c
}
(function(){var s=document.getElementsByTagName("script");preCode(s[s.length-1])})()

上一篇:js显示当前星期的起止日期的脚本
下一篇:javascript 拽拉效果 供JS初学者学习参考
一句话新闻
一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap