关于在博客园文章中运行自己html

关于实现在博客网站中实时的运行自己的代码

Document

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<div id="ccc" class="ccc aaa bbb"></div>
</body>
</html>

运行

要实现代码的运行必要的条件是取到代码,并运行,在textarea中的代码中的> 或< &等都被替换了
所以使用normalizeCode 函数可以是code取出后正常

var normalizeCode = function(code){
code = code.replace(/</g,‘<‘);
code = code.replace(/>/g,‘>‘);
code = code.replace(/&/g,‘&‘);
return code;
};

接下来需要将取出的代码在空白的页面运行

newWin=function(code){
var newwin=window.open("","_blank");//新建一个窗口
newwin.document.open(‘text/html‘, ‘replace‘);//第二个参数只有一个值 可选:replace,如果启用了该值,则新建的文档会覆盖当前页面的文档(相当于清空了原文档里的所有元素,且不能后退即,浏览器的后退按钮不可用);
newwin.opener = null;
newwin.document.write(code);
newwin.document.close();
}

接下来是什么点击什么触发这段代码,在上面的例子中是通过textare中的id 和button 的id达到快速找到要运行的文本和点击运行的按钮打开窗口

window.onload=function(){
document.getElementById("run").onclick=function(){
var code=document.getElementById("runcode").innerHTML;
code=normalizeCode(code);
newWin(code);
}
}

这个方法比较简单,不适用一个窗口中含有多个运行的html

//2016/8/27
//过两天更新
时间: 2024-10-25 03:24:23

关于在博客园文章中运行自己html的相关文章

你博客园文章中的图片可以放大吗?反正我的是可以放大了!

序 看看项目经理是如何实现的? 插件选择 试了几个插件,感觉还是 lightbox 插件好用,链接:https://github.com/lokesh/lightbox2,该插件具备如下几个特点: 点击图片后根据图片实际尺寸自动显示 图片有加载动画特效,有前.后.关闭按钮 想看详细介绍,可以查看:https://www.lokeshdhakar.com/projects/lightbox2/ 具体实现 通过上面的链接下载好后需要如下几个文件:lightbox.css.lightbox-plus-

Python抓拍博客园文章,并存入数据库

在学习python后,想做个爬虫,抓取博客园文章. 爬虫思路很简单,模拟浏览器访问网页,得到网页的html代码,再根据页面结构,从html中提取自己需要的内容. 本文代码主要分为3个部分: 1.读取博客园首页文章链接. https://www.cnblogs.com/是博客园的首页,列出了文章,分析页面内容,读取文章的链接. 这需要看页面的结构,可以使用浏览器,再浏览页面代码,选择元素,看界面上选中哪一部分,根据自己的需要,可以看到对应模块的代码. 2.对于每个页面,分析页面内容. 这需要看页面

利用GitHook实现博客园文章的备份和自动发布

在使用vscode中的writecnblog插件时有所启发,链接: 用vscode写博客和发布,大家可以看看. 我们在本地可以利用git轻松实现博客园文章的历史记录管理,利用博客园的MetaWeblog API 别人的介绍编写小程序来自动化上传文章(参考插件). 更进一步,将这个程序放到githook里,每次commit时自动执行,就实现了现博客园文章的备份和自动发布. 这样,你每次发布文章的步骤就简化为: 编写本地一个Git仓库内的xx.md文件 commit更改 程序会自动获取diff,然后

利用GitHook实现博客园文章的备份和自动发布.md

在使用vscode中的writecnblog插件时有所启发,链接: [用vscode写博客和发布](https://www.cnblogs.com/caipeiyu/p/5475761.html),大家可以看看. 我们在本地可以利用git轻松实现博客园文章的历史记录管理,利用博客园的MetaWeblog API [别人的介绍](https://www.cnblogs.com/caipeiyu/p/5354341.html)编写小程序来自动化上传文章(参考插件). 更进一步,将这个程序放到gith

C#控制台基础 正则表达式,regex,webclient下载博客园网页中的一张图片

1 网页图 这网页就一张图片,新手入门,找个简单一些的. 2 代码 1 正则表达式,regex,webclient下载博客园网页中的一张图片 2 3 4 using System; 5 using System.Collections.Generic; 6 using System.IO; 7 using System.Linq; 8 using System.Net; 9 using System.Text; 10 using System.Text.RegularExpressions; 1

简单爬虫-抓取博客园文章列表

原文:简单爬虫-抓取博客园文章列表 如果使用对方网站数据,而又没有响应的接口,或者使用接口不够灵活的情况下,使用爬虫在合适不过了.爬虫有几种,对方网站展示形式有几种都是用分析,每个网站展示有相似的地方,有不同的地方. 大部分使用httpRequst就能完成,不管是否添加了口令.随即码.请求参数.提交方式get或者post.地址来源.多次响应等等.但是有些网站使用ajax如果是返回json或固定格式的也好处理,如果是很复杂的,可以使用webbrower控件进行抓取,最后正则解析,获取所需要的数据即

博客园随笔中添加目录导航悬浮框

1,在博客园设置中申请js权限,写明申请理由大约2-3小时通过 2,通过后在后台设置中添加CSS代码 /*生成博客目录的CSS*/ #uprightsideBar{ font-size:12px; font-family:Arial, Helvetica, sans-serif; text-align:left; position:fixed;/*将div的位置固定到距离top:50px,right:0px的位置,这样div就会处在最右边的位置,距离顶部50px*/ top:50px; righ

实用scrapy批量下载自己的博客园文章

首先,在items.py中定义几个字段用来保存网页数据(网址,标题,网页源码) 如下所示: import scrapy class MycnblogsItem(scrapy.Item): # define the fields for your item here like: # name = scrapy.Field() page_title = scrapy.Field() page_url = scrapy.Field() page_html = scrapy.Field() 最重要的是我

JS批量删除博客园文章

$('tr').each(function(){ if($(this).attr('id')!=null){ var s = $(this).attr('id').slice(9); console.info("正在删除:"+s); deletePost(s); } }); window.location.reload(); 以前都是用新浪博客的,但是新浪博客对编程类文章支持不好,记录一些html代码总是隐藏. 第一次用博客园,被他简洁的界面吸引. 一看还有博客搬家功能,于是把新浪博客