博客
关于我
关于博客园的在线演示
阅读量:469 次
发布时间:2019-03-06

本文共 807 字,大约阅读时间需要 2 分钟。

在博客园发布文章时,需要在线演示代码却无法托管HTML文件,这确实是个不少人会遇到的问题。经过一番探索,我找到了一个可行的解决方案。

传统的方法是将代码直接写在textarea中,然后通过JS打开新窗口来展示,不过博客园会自动屏蔽掉style标签里的内容,这会影响代码的展示效果。因此,我决定采取另一种策略。

在研究其他博友的文章时,我发现有些人会完全避免使用任何标签,但这样做并不是最优的选择。经过深入思考,我决定采取另一种方法:将不必要的HTML标签隐藏起来。

具体来说,我使用以下方法来实现代码的在线演示:

  • 在博客园的编辑器中,切换到文本编辑模式,手动输入需要的HTML代码。

  • 将不需要的标签全部隐藏,仅保留textarea标签。

  • 在textarea内输入如下代码:

    1. 在页面的脚本部分添加以下JS代码:
    2. $(function() {    var newWindow = window.open('', '_self');    var codeContent = document.getElementById('cnblogsShowCode').value;    newWindow.document.open('text/html', 'replace');    newWindow.opener = null;    newWindow.document.write(codeContent);    newWindow.document.close();});

      通过这种方式,可以实现代码的在线演示。

      需要注意的是,在代码中如果包含textarea标签,可能会导致匹配问题。解决方法是将代码中的textarea标签用HTML entities替换,即将<替换为&amp;lt;>替换为&amp;gt;

      这种方法既简单又有效,可以满足在线演示的需求。

    转载地址:http://hlvbz.baihongyu.com/

    你可能感兴趣的文章
    poj 3628 Bookshelf 2
    查看>>
    Qt笔记——官方文档全局定义(一)Types数据类型
    查看>>
    POJ 3670 DP LIS?
    查看>>
    POJ 3683 Priest John's Busiest Day (算竞进阶习题)
    查看>>
    POJ 3988 Selecting courses
    查看>>
    POJ 4020 NEERC John's inversion 贪心+归并求逆序对
    查看>>
    poj 4044 Score Sequence(暴力)
    查看>>
    POJ 基础数据结构
    查看>>
    POJ 题目3020 Antenna Placement(二分图)
    查看>>
    Poj(1797) Dijkstra对松弛条件的变形
    查看>>
    SpringBoot为什么不需要xml配置文件?
    查看>>
    POJ--2391--Ombrophobic Bovines【分割点+Floyd+Dinic优化+二分法答案】最大网络流量
    查看>>
    Qt笔记——SQLite初探QSqlDatabase QSqlQuery
    查看>>
    POJ-1163-The Triangle
    查看>>
    POJ-Fence Repair 哈夫曼树
    查看>>
    poj1061 - 同余方程,二元一次不定方程
    查看>>
    Qt笔记——SQLite再探
    查看>>
    poj1068Parencodings
    查看>>
    poj1182(带权并查集)
    查看>>
    POJ1182(带权并查集)
    查看>>