博客
关于我
关于博客园的在线演示
阅读量:468 次
发布时间: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/

    你可能感兴趣的文章
    NFS共享文件系统搭建
    查看>>
    nfs复习
    查看>>
    NFS网络文件系统
    查看>>
    ng 指令的自定义、使用
    查看>>
    nginx + etcd 动态负载均衡实践(二)—— 组件安装
    查看>>
    nginx + etcd 动态负载均衡实践(四)—— 基于confd实现
    查看>>
    Nginx + Spring Boot 实现负载均衡
    查看>>
    Nginx + uWSGI + Flask + Vhost
    查看>>
    Nginx - Header详解
    查看>>
    Nginx Location配置总结
    查看>>
    Nginx upstream性能优化
    查看>>
    Nginx 中解决跨域问题
    查看>>
    Nginx 动静分离与负载均衡的实现
    查看>>
    Nginx 反向代理 MinIO 及 ruoyi-vue-pro 配置 MinIO 详解
    查看>>
    Nginx 反向代理解决跨域问题
    查看>>
    Nginx 反向代理配置去除前缀
    查看>>
    nginx 后端获取真实ip
    查看>>
    Nginx 学习总结(17)—— 8 个免费开源 Nginx 管理系统,轻松管理 Nginx 站点配置
    查看>>
    nginx 常用配置记录
    查看>>
    Nginx 我们必须知道的那些事
    查看>>