以下为js代码:

var header = document.querySelector('header');
var section = document.querySelector('section');
var requestURL = 'https://raw.githubusercontent.com/PLAYERYENNEY/QIMO/master/shikigami.json';
//新建对象 var request = new XMLHttpRequest();
//初始化请求 request.open('GET', requestURL);
request.responseType = 'json';
request.send();
//规定请求响应类型 request.onload = function () {
var superHeroes = request.response;
populateHeader(superHeroes);
showHeroes(superHeroes);
}
//匿名函数,把响应回来的值赋给变量,然后调用函数 function populateHeader(jsonObj) {
var myH1 = document.createElement('h1');
myH1.textContent = jsonObj['squadName'];
header.appendChild(myH1);
var myPara = document.createElement('p');
myPara.textContent = '输出 / ' + jsonObj['homeTown'] + ' / 辅助 / ' + jsonObj['formed'];
header.appendChild(myPara);
}
//对象创建对象(节点)myH1,赋值,放入header成为子对象 function showHeroes(jsonObj) {
var heroes = jsonObj['members'];
for (var i = 0; i < heroes.length; i++) {
var myArticle = document.createElement('article');
var myH2 = document.createElement('h2');
var myPara1 = document.createElement('p');
var myPara2 = document.createElement('p');
var myPara3 = document.createElement('p');
var myList = document.createElement('ul');
myH2.textContent = heroes[i].name;
myPara1.textContent = 'TYPE: ' + heroes[i].secretIdentity;
myPara2.textContent = 'HOW: ' + heroes[i].age;
myPara3.textContent = 'EG:';
var superPowers = heroes[i].powers;
for (var j = 0; j < superPowers.length; j++) {
var listItem = document.createElement('li');
listItem.textContent = superPowers[j];
myList.appendChild(listItem);
}
myArticle.appendChild(myH2);
myArticle.appendChild(myPara1);
myArticle.appendChild(myPara2);
myArticle.appendChild(myPara3);
myArticle.appendChild(myList);
section.appendChild(myArticle);
}
}
//声明变量数组1 heroes并赋值members,数组2 superpowers并赋值

上传到github文件地址为:https://github.com/PLAYERYENNEY/QIMO/blob/master/shikigami.json

代码如下:

{
"squadName" : "SHIKIGAMI",
"homeTown" : "控制",
"formed" : "治疗" ,
"secretBase" : "Super tower",
"active" : true,
"members" : [
{
"name" : "输出",
"age" : "对敌方造成伤害",
"secretIdentity" : "主要属性堆积:暴击,暴伤,攻击",
"powers" : [
"荒 / SUSABI",
"大天狗 / OOTENGU",
"茨木童子 / LBARAKI DOJI"
]
},
{
"name" : "控制",
"age" : "对敌方造成混乱,沉默等控制效果",
"secretIdentity" : "主要属性堆积:效果命中,速度",
"powers" : [
"阎魔 / ENMA",
"雪女 / YUKI ONNA",
"兵俑 / SAMURAI X"
]
},
{
"name" : "辅助",
"age" : "对己方加强状态或者为己方增加护盾",
"secretIdentity" : "主要属性堆积:暴击,生命,暴伤",
"powers" : [
"辉夜姬 / KAGUYA",
"一目连 / LCHIMOKUREN",
"追月神 / OITSUKI"
]
},
{
"name" : "治疗",
"age" : "为己方回复生命",
"secretIdentity" : "主要属性堆积:生命,暴击,暴伤",
"powers" : [
"花鸟卷 / HANA",
"桃花妖 / MOMO",
"樱花妖 / SAKURA"
]
}
]
}

运行效果详情于期末项目3.0版本,具体为shikigami.html

----改写superheros的json以及上传到github----的更多相关文章

  1. C#picturebox控件图片以json格式上传java后台保存

    关于winform上传图片到Java后端,保存到数据库,有多种方法,本文主要介绍利用picturebox控件,点击按钮上传图片,将图片转化为base64格式,以json格式上传到Java后台,再从ja ...

  2. 如何通过Git GUI将自己本地的项目上传至Github

    最近在学习node.js和react,顺便复习了下AngluarJS相关的东西,写了些小demo想放在GitHub上,之前仅限于只申请了GitHub账号从没用过,今天花半天时间查资料认真学习Githu ...

  3. 将本地代码上传至github备份的操作方法

    这篇文章写得是windows下的使用方法. 第一步:创建Github新账户 第二步:新建仓库 第三步:填写名称,简介(可选),勾选Initialize this repository with a R ...

  4. 将本地项目上传到Github

    将本地项目上传到Github 转载请注明出自天外归云的博客. 前提 已经下载了Git到本地. 创建Repository 首先登陆我的Github页面,在Repositories中New一个并起Repo ...

  5. C++向main函数传递参数的方法(实例已上传至github)

    通常情况下,我们定义的main函数都只有空形参列表: int main(){...} 然而,有时我们确实需要给mian传递实参,一种常见的情况是用户设置一组选项来确定函数所要执行的操作.例如,假定ma ...

  6. 运用HBuilder上传到GitHub

    Hbuilder安装github插件 如图所示: 一.打开自己GitHub,新建一个"库" 2.设置自己项目名和简介 3.建完后,就会显示GitHub要上传路径 4.打开" ...

  7. 如何从本地把项目上传到github&&如何把github项目通过clone复制下来

    一.第一步---注册一个Github账号 首先要在GitHub上创建一个帐号,可以去官方网站注册一个账号. 二.git安装 下载地址:http://msysgit.github.io/ 二.第二步-- ...

  8. mac下安装git,并将本地的项目上传到github

    mac下安装git 安装过程: 1.下载Git installer http://git-scm.com/downloads 2.下载之后打开,双击.pkg安装 3.打开终端,使用git --vers ...

  9. 详细教程:将本地项目上传到github

    作为 一个工程师,将本地项目上传到github进行备份和分享是一个不错的技能,一来可以方便以后的工作,二来可以分享自己的成果.所以下面本人详细教大家如何将本地项目上传到github,十分简单,一学就会 ...

随机推荐

  1. ubuntu安装带调试功能的bochs

    ①进入bochs官网下载源码包 说明 用安装包直接安装没有调试功能 下载源码包步骤 a.输入网址:http://bochs.sourceforge.net/ b.单击图中红色标注图标 c.单击图中红色 ...

  2. thinkphp51 重定向 redirect()

    thinkphp51 重定向 跨域 redirect() 可以重新定义新的路由,是fetch() 无法做到的.

  3. MM-分割评估

    SAP MM分割评估 https://blog.csdn.net/kangliujie/article/details/76681333 SAP MM批次管理分割评估 https://blog.csd ...

  4. MySql:SELECT 语句(五)正则表达式的使用

    关键字:REGEXP REGEXP 语句形式和 LIKE 语句相似,REGEXP 后面跟正则表达式.如果需要区分大小写,可以在 REGEXP 后加关键字 BINARY. 所有的正则表达式的规则都可以在 ...

  5. sklearn中的SVM

    scikit-learn中SVM的算法库分为两类,一类是分类的算法库,包括SVC, NuSVC,和LinearSVC 3个类.另一类是回归算法库,包括SVR, NuSVR,和LinearSVR 3个类 ...

  6. mac 环境搭建

    安装homebrew jdk 也可以官网下载 maven 官网下载tar.gz包 也在homebrew下安装git,java,mysql.

  7. 【C++】C++中的string类的用法总结

    相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...

  8. std::condition_variable::wait_until segment

    原因是使用了 -static 改为 -static-libstdc++ -static-libgcc

  9. yii2.0 url美化-apache服务器

    //配置内容 'urlManager' => [ 'enablePrettyUrl' => true, 'enableStrictParsing' => false, //不启用严格 ...

  10. 【笔记】Python基础一 :变量,控制结构,运算符及数据类型之数字,字符串,列表,元组,字典

    一,开发语言介绍 高级语言:Java,C#,Python  ==>产生字节码 低级语言:C,汇编                   ==>产生机器码 高级语言开发效率高,低级语言运行效率 ...