dedecms制作Html+Css代码运行框jQuery版

  • A+
所属分类:仿站

网上的代码运行框代码算是比较多的了,随便搜索一下都一大堆的,但是没有找到一合适的,只有自己折腾一个简单的,注本文介绍的方法需要引用jquery库

首页在dedecms模板中引入jquery文件,如果没有你可以去jquery官网下载

在dedecms模板中添加
 

<script src="http://static.qmtx3.com/qmtx3static/jquery1.7.2.js" type="text/javascript"></script>
02
<script type="text/javascript">
03
$(function() {
04
    $('.runHtml').each(function(index, element) {
05
        $(this).after('<textarea class="runHtmlTextarea" style="width:80%; min-height:150px; padding:10px; border:solid 1px #ccc; clear:both; display:block;">' + $(this).html() + '</textarea><p><input type="button" class="runHtmlBtn" value="运行">&nbsp;<i class="runHtmlTips">你可以修改代码后再运行查看结果!</i></p>')
06
    });
07
    $('div').delegate('.runHtmlBtn', 'click',function(){
08
        var newwin = window.open('about:blank');
09
        newwin.document.write($(this).parent().prev().val());
10
    });
11
});
12
</script>

代码事例:

源代码如下:

<div class="runHtml">
2
     1234567
3
</div>

代码说明:这段代码会将页面中class里包含runHtml样式的层全部变成代码运行框,如上面代码会把.runHtml这个div变成textarea代码运行框,可能有的朋友会问为什么不直接用textarea而用div,其实这点是出于对seo搜索引擎优化来做的,因为textarea里的内容蜘蛛是不会去抓取的,由于技术类文章代码段所占的篇幅比较大,有些可能整篇可能就是代码。

该方法并没有什么技术含量,唯一一点好处就是一个页面可以很方便的实现多个代码运行框,常见的代码运行框一般有复制,另存为功能,由于JS的复制功能兼容性并不友好,如果你想折腾复制功能可以从swf实现入手,至于另存为的功能我们也不知道怎么做好兼容性,希望知道的朋友留言告知

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: