删除垃圾文件

This commit is contained in:
xiongxiaoyang 2023-10-14 13:42:37 +08:00
parent 30959da038
commit a33d8f68a2
207 changed files with 0 additions and 17071 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

View File

@ -1 +0,0 @@
ANtJi2eSPQ

View File

@ -1 +0,0 @@
Ep8xaWQJAI

View File

@ -1 +0,0 @@
L6sR9GjEtg

File diff suppressed because one or more lines are too long

View File

@ -1,92 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>帝霸</title>
<link rel="stylesheet" href="./layui/css/layui.css">
<style type="text/css">
.indexP p a{
color:#4c6978;
}
</style>
</head>
<body>
<div style="height: 50px;line-height: 50px;text-align: center" class="layui-header header header-doc layui-bg-cyan">
<div style="float: left;margin-left: 10px">
<a href="javascript:history.go(-1)">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe65c;</i></a>
</div>
<b class="layui-icon">帝霸</b>
<div style="float: right;margin-right: 10px">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe68e;</i>
</div>
</div>
<div class="layui-row" style="background: #f2f2f2">
<div style="padding: 10px" class="layui-col-xs4 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs8 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div style="margin-top: 5px;color: #4c6978;">评分<i style="font-weight:bold;color: red">9.2分</i></div>
</div>
</div>
<div style="text-align: center;height: 60px;line-height: 60px">
<button type="button" class="layui-btn layui-btn-radius">开始阅读</button>
<button type="button" onclick="AddToFavorites()" class="layui-btn layui-btn-radius layui-btn-warm">加入收藏</button>
</div>
<p style="line-height: 23px;padding: 10px;text-indent: 25px;font-size: 14px;color: #4c6978;">
  万火儿莫名其妙的重生了而且从堂堂的金丹修士直接坠落尘埃变成天赋极差的炼气期小透明<br><br>  小透明无父无母小可怜柔弱无骨真小白花<br><br>  万火儿仰天长叹<br><br>  天道你大爷<br><br>  不过这一次不仅附赠随身空间还另有极重承诺的天之骄子美貌未婚夫一枚<br><br>  万火儿抚胸感叹还好还好<br><br>  但是除此之外还附赠另一枚重生女<br><br>  重生女杂灵根蓦然醒转变为天之骄女自此之后丹药在她手神兽就她有人生处处是机缘所到处处有福缘更有无数美男前仆后继后宫日益壮大<br><br>  万火儿哀叹<br><br>  不同命啊~<br><br>  什么<br><br>  重生女抢她名额找未婚夫揍她<br><br>  什么<br><br>  重生女抢她好友让好友接着揍她<br><br>  什么<br><br>  重生女要将她未婚夫收后宫<br><br>  抱歉绝对不行<br><br>  自此之后柔弱小白花踏上漫漫极品女盗之路<br><br>  信奉宗旨只要是重生女的机缘那就抢抢抢只要是重生女的桃花那就破破破<br><br>  什么机缘本是她的桃花也是她的<br><br>  桃花就算了机缘绝对不放过<br><br>  敬请收看妖孽无双女盗贼是如何装作可怜无助小白花一路扮猪吃老虎踏上漫漫修仙路的
</p>
<div class="layui-collapse">
<div class="layui-colla-item" >
<h2 class="layui-colla-title">
<span>最新章节</span>
<span style="margin-left: 30px">
更新 <i>2019-08-22 12:56:09</i>
</span>
</h2>
<div class="layui-colla-content layui-show indexP">
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
</div>
</div>
</div>
<div style="height: 42px;color:#4c6978;line-height: 42px;padding-left: 30px;background: #f2f2f2" >
查看完整目录
</div>
<div style="height: 60px;line-height: 60px;text-align: center" class="layui-footer footer footer-demo layui-bg-cyan">
<a style="font-size: 14px;color: #92B8B1;">首页</a>
<a style="font-size: 14px;color: #92B8B1;margin-left: 50px">阅读记录</a>
<div style="float: right"><a href="#top"><i class="layui-icon"
style="margin-right:15px;font-size: 30px;color:#92B8B1 ">&#xe604;</i></a>
</div>
</div>
</body>
<script src="./layui/layui.all.js"></script>
</html>

View File

@ -1,88 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>帝霸</title>
<link rel="stylesheet" href="./layui/css/layui.css">
<style type="text/css">
.indexP p a{
color:#4c6978;
}
</style>
</head>
<body>
<div style="height: 50px;line-height: 50px;text-align: center" class="layui-header header header-doc layui-bg-cyan">
<div style="float: left;margin-left: 10px">
<a href="javascript:history.go(-1)">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe65c;</i></a>
</div>
<b class="layui-icon">帝霸</b>
<div style="float: right;margin-right: 10px">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe68e;</i>
</div>
</div>
<p style="height: 30px;line-height: 30px;padding: 10px">
<a href="#buttom" style="color: red">直达页面底部</a>
</p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第345章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第344章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第343章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第342章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第341章 我在钓鱼</a></p>
<p style="height: 30px;line-height: 30px;padding: 10px"><a>第340章 我在钓鱼</a></p>
<div style="height: 60px;line-height: 60px;text-align: center" class="layui-footer footer footer-demo layui-bg-cyan">
<a style="font-size: 14px;color: #92B8B1;">首页</a>
<a style="font-size: 14px;color: #92B8B1;margin-left: 50px">阅读记录</a>
<div style="float: right"><a href="#top"><i class="layui-icon"
style="margin-right:15px;font-size: 30px;color:#92B8B1 ">&#xe604;</i></a>
</div>
</div>
<a name="buttom"></a>
</body>
<script src="./layui/layui.all.js"></script>
</html>

View File

@ -1,313 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>帝霸</title>
<link rel="stylesheet" href="./layui/css/layui.css">
<style type="text/css">
.indexP p a {
color: #4c6978;
}
.Readarea {
font-size: 18px;
line-height: 35px;
padding: 10px;
color: #333;
}
div, p {
wrap-work: break-word;
word-break: break-all;
word-wrap: break-word;
word-break: normal;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
box-sizing: border-box;
-ms-box-sizing: border-box;
}
.indexDiv a {
margin-left: 20px;
}
</style>
</head>
<body>
<div style="height: 50px;line-height: 50px;text-align: center" class="layui-header header header-doc layui-bg-cyan">
<div style="float: left;margin-left: 10px">
<a href="javascript:history.go(-1)">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe65c;</i></a>
</div>
<b class="layui-icon">搜索小说</b>
<div style="float: right;margin-right: 10px">
<i style="font-size: 20px;color: #92B8B1;" class="layui-icon">&#xe68e;</i>
</div>
</div>
<div class="layui-container">
<div class="layui-row">
<div class="layui-col-xs10 layui-col-sm10 layui-col-md11 layui-col-lg11" style="padding-top:1%">
<input type="text" name="title" required lay-verify="required" placeholder="请输入书名·作者" autocomplete="off"
class="layui-input">
</div>
<div class="layui-col-xs1" style="padding: 1%">
<button class="layui-btn" lay-submit lay-filter="formDemo">搜索</button>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div class="layui-row" style="margin-bottom:10px;padding:10px;background: #f2f2f2">
<div class="layui-col-xs5 layui-col-sm2 layui-col-md2 layui-col-lg2">
<img align="left"
style="width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
</div>
<div style="padding: 20px" class="layui-col-xs7 layui-col-sm8 layui-col-md8 layui-col-lg8">
<div style=";color: #4c6978;font-weight: bold;font-size: 20px">帝霸</div>
<div style=";color: #4c6978;float: right;"><i style="color: red">9.2分</i></div>
<div style=";color: #4c6978;">作者厌笔萧生</div>
<div style="margin-top: 5px;color: #4c6978;">类别玄幻奇幻</div>
<div style="margin-top: 5px;color: #4c6978;">状态连载</div>
<div style="margin-top: 5px;color: #4c6978;">更新<i>2019-08-22</i></div>
<div class="layui-collapse" style="margin-top: 5px;">
<div class="layui-colla-item">
<h2 style="color: #4c6978;" class="layui-colla-title">简介:</h2>
<div style="color: #4c6978;" class="layui-colla-content">
一觉醒来世界大变熟悉的高中传授的是魔法
告诉大家要成为一名出色的魔法师居住的都市之外游荡着袭击人类的魔物妖兽
虎视眈眈崇尚科学的世界变成了崇尚魔法偏偏有着一样以学渣看待自己的老师
一样目光异样的同学一样社会底层挣扎的爸爸一样纯美却不能走路的非血缘妹妹不过莫凡发现绝大多数人都只能够主修一系魔法自己却是全系全能法师
</div>
</div>
</div>
</div>
</div>
<div id="books" style="text-align: center"></div>
<div style="height: 60px;line-height: 60px;text-align: center" class="layui-footer footer footer-demo layui-bg-cyan">
<a style="font-size: 14px;color: #92B8B1;">首页</a>
<a style="font-size: 14px;color: #92B8B1;margin-left: 50px">阅读记录</a>
<div style="float: right"><a href="#top"><i class="layui-icon"
style="margin-right:15px;font-size: 30px;color:#92B8B1 ">&#xe604;</i></a>
</div>
</div>
<a name="buttom"></a>
</body>
<script src="./layui/layui.all.js"></script>
<script>
layui.use('laypage', function () {
var laypage = layui.laypage;
//执行一个laypage实例
laypage.render({
elem: 'books' //注意这里的 test1 ID不用加 #
, count: 50 //数据总数从服务端得到
, jump: function (obj, first) {
//obj包含了当前分页的所有参数比如
console.log(obj.curr); //得到当前页以便向服务端请求对应页的数据
console.log(obj.limit); //得到每页显示的条数
//首次不执行
if (!first) {
//do something
}
}
});
});
</script>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

View File

@ -1,376 +0,0 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>首页</title>
<link rel="stylesheet" href="./layui/css/layui.css">
</head>
<body>
<!-- 你的HTML代码 -->
<a name="top"></a>
<ul class="layui-nav" lay-filter="">
<li class="layui-nav-item layui-this"><a href="">&nbsp;&nbsp;首&nbsp;&nbsp;页&nbsp;&nbsp;&nbsp;&nbsp;</a></li>
<li class="layui-nav-item"><a href="book_detail.html">玄幻小说</a></li>
<li class="layui-nav-item"><a href="">修真小说</a></li>
<li class="layui-nav-item"><a href="">都市小说</a></li>
<li class="layui-nav-item"><a href="">历史小说</a></li>
<li class="layui-nav-item"><a href="">网游小说</a></li>
<li class="layui-nav-item"><a href="">科幻小说</a></li>
<li class="layui-nav-item"><a href="">女频小说</a></li>
<li class="layui-nav-item"><a href="">小说排行榜</a></li>
</ul>
<div class="layui-container">
<div class="layui-row">
<div class="layui-col-xs10 layui-col-sm10 layui-col-md11 layui-col-lg11" style="padding-top:1%">
<input type="text" name="title" required lay-verify="required" placeholder="请输入书名·作者" autocomplete="off"
class="layui-input">
</div>
<div class="layui-col-xs1" style="padding: 1%">
<button class="layui-btn" lay-submit lay-filter="formDemo">搜索</button>
</div>
</div>
</div>
<div class="layui-collapse">
<div class="layui-colla-item">
<h2 class="layui-colla-title">本站推荐</h2>
<div class="layui-colla-content layui-show">
<div class="layui-container" style="padding: 0px">
<div class="layui-row" style="text-align: center">
<div style="padding: 1%" class="layui-col-xs4 layui-col-sm4 layui-col-md3 layui-col-lg4">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
<br/>
<a href="book_detail.html">三寸人间</a>
</div>
<div style="padding: 1%" class="layui-col-xs4 layui-col-sm4 layui-col-md3 layui-col-lg4">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
<br/>
<a href="">三寸人间</a>
</div>
<div style="padding: 1%" class="layui-col-xs4 layui-col-sm4 layui-col-md3 layui-col-lg4">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;" src="static/4868.jpg"/>
<br/>
<a href="">三寸人间</a>
</div>
</div>
</div>
</div>
</div>
<div class="layui-colla-item">
<h2 class="layui-colla-title">热门小说推荐</h2>
<div class="layui-colla-content layui-show">
<div class="layui-container">
<div class="layui-row">
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
<div style="margin-top: 1%" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs2">
<img style=" width:auto; height:auto; max-width:100%; max-height:100%;"
src="static/4868.jpg"/>
</div>
<div class="layui-col-xs10 layui-col-sm8 layui-col-md8 layui-col-lg8"
style="float: left;padding-left: 5%">
<div><b>绝世唐门</b>
<div style="float: right;"><b><i style="color: red">9.3分</i></b></div>
</div>
<div>作者唐家三少</div>
<div class="layui-elip" style="word-break:break-all;">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="layui-colla-item">
<h2 class="layui-colla-title">最近更新小说<div style="float: right; margin-right: 20px"><a href="javascript:moreNewBooks()"><i style="font-size: 14px;" class="layui-icon">更多&#xe65b;</i></a></div></h2>
<div class="layui-colla-content layui-show">
<div class="layui-container" style="padding-left: 2px;padding-right: 5px">
<div class="layui-row">
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
<div style="padding-bottom: 30px" class="layui-col-xs11 layui-col-sm6 layui-col-md6 layui-col-lg6">
<div class="layui-col-xs8 layui-col-sm5 layui-col-md5 layui-col-lg5"><b>1.我真的要飞天了</b> - 柳一条
</div>
<div style="color: #FF5722;float: right;padding-right: 20px"><i>08-22 19:13</i></div>
<div style="clear: both"></div>
<div style="padding-left: 5px;padding-top: 5px" class="layui-elip">
这里没有魔法没有斗气没有武术却有武魂唐门创立万年之后的斗罗大陆上唐门式微一代天骄横空出世新一代史莱克七怪能否重振唐门谱写一曲绝世唐门之歌
百万年魂兽手握日月摘星辰的死灵圣法神导致唐门衰落的全新魂导器体系一切的神奇都将一一展现 唐门暗器能否重振雄风唐门能否重现辉煌一切尽在绝世唐门
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<div style="height: 60px;line-height: 60px;text-align: center" class="layui-footer footer footer-demo layui-bg-cyan">
<a style="font-size: 14px;color: #92B8B1;">首页</a>
<a style="font-size: 14px;color: #92B8B1;margin-left: 50px">阅读记录</a>
<div style="float: right"><a href="#top"><i class="layui-icon"
style="margin-right:15px;font-size: 30px;color:#92B8B1 ">&#xe604;</i></a>
</div>
</div>
<script src="./layui/layui.all.js"></script>
<script src="./js/jquery-1.9.1.js"></script>
<script>
function moreNewBooks(event) {
alert("获取更多");
alert($("a"))
}
</script>
</body>
</html>

View File

@ -1,13 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>服务器忙</title>
</head>
<body>
<img src="/mang.png" style="position: fixed;top:10%;left: 25%">
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

View File

@ -1 +0,0 @@
shenma-site-verification:5548d4bd962d5cdd4cf6aeba92b991a8_1565952381

View File

@ -1 +0,0 @@
shenma-site-verification:e93eadfe16868eab152e1c0d5520905c_1566024934

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.6 KiB

View File

@ -1 +0,0 @@
!function(){var p,q,r,a=function(){var b,c,d,e,a=document.getElementsByTagName("script");for(b=0,c=a.length;c>b;b++)if(e=a[b],e.src&&(d=/^(https?:)\/\/[\w\.\-]+\.cnzz\.com\//i.exec(e.src)))return d[1];return window.location.protocol}(),b=encodeURIComponent,c="1264351521",d="",e="",f="online_v3.php",g="z8.cnzz.com",h="1",i="text",j="z",k="&#31449;&#38271;&#32479;&#35745;",l=window["_CNZZDbridge_"+c]["bobject"],m="1",n=a+"//online.cnzz.com/online/"+f,o=[];o.push("id="+c),o.push("h="+g),o.push("on="+b(e)),o.push("s="+b(d)),n+="?"+o.join("&"),"0"===m&&l["callRequest"]([a+"//cnzz.mmstat.com/9.gif?abc=1"]),h&&(""!==e?l["createScriptIcon"](n,"utf-8"):(q="z"==j?"https://www.cnzz.com/stat/website.php?web_id="+c:"https://quanjing.cnzz.com","pic"===i?(r=a+"//icon.cnzz.com/img/"+d+".gif",p="<a href='"+q+"' target=_blank title='"+k+"'><img border=0 hspace=0 vspace=0 src='"+r+"'></a>"):p="<a href='"+q+"' target=_blank title='"+k+"'>"+k+"</a>",l["createIcon"]([p])))}();

Binary file not shown.

Before

Width:  |  Height:  |  Size: 812 B

View File

@ -1,176 +0,0 @@
header {height:54px; background:#4baacd; line-height:54px; border-bottom:1px #4399b8 solid;}
header img{float:left; width:142px; height:54px;}
header a{float:right; font-size:12px; color:#C5F1FF; line-height:80px;}
.Index_Header a{margin:0 6px;}
header .regis{background:url(../images/icon-regis.gif);}
header .login{background:url(../images/icon-login.gif);}
header .regis:hover{background:url(../images/icon-regis-press.gif);}
header .login:hover{background:url(../images/icon-login-press.gif);}
header .regis, header .login{width:25px; height:54px;}
header .regis, header .login, header .regis:hover, header .login:hover{background-repeat:no-repeat; background-position:50% 30%; background-size:18px 19px;}
header .username{float:right; text-align:right; line-height:54px; font-size:12px; color:#c5f1ff; height:54px; width:140px; overflow:hidden;}
header .username img{float:right; width:18px; height:19px; margin-top:17px; margin-right:5px;}
header .username b{float:right; font-weight:normal; max-width:115px; text-align:left; white-space: nowrap;}
header .username a {margin:0; color:#c5f1ff; line-height:55px;}
.smallNav{height:40px; background:#4baacd; line-height:40px; text-align:center; border-bottom:1px #4399b8 solid; font-size:14px; padding:0 10px; border-top:1px #5db3d2 solid;}
.smallNav a{color:#fff; float:left; width:14%;}
.smallNav .sel{color:#4aaccf;}
.subNav{height:162px; background:#68aac2; border-top:1px #3580a4 solid; border-bottom:1px #3580a4 solid; line-height:40px; text-align:center; position:relative; font-size:14px; display:none;}
.subNav a{float:left; width:16.6%; color:#b6d3df;}
.subNav .sel{color:#fff;}
.searchForm{text-align:center; margin:10px; position:relative; clear:both;}
.searchForm_input{border:1px #c0deea solid; font-size:14px; background:#f8fdff; padding:0 5px; width:100%; height:30px; line-height:30px; color:#cbcfd1;}
.searchForm_btn{position:absolute; right:0; top:0; padding:0; height:30px; width:60px; color:#C0DEEA; padding-left:25px; line-height:30px; border:none; background:url(../images/icon-search.gif) no-repeat 15% 50%; background-size:18px; border-left:1px #C0DEEA solid;}
.del{background:url(../images/icon-searchdel.gif) no-repeat 50% 50%; background-size:18px;}
.notearea{height:auto; overflow:hidden; margin-bottom:5px; padding:0 10px;}
.notearea img{margin-top:2px; float: left; padding:; width: 50px; height:20px; margin-right:10px;}
.note{text-align:center; margin-bottom:10px; font-size:12px; height:25px; line-height:25px; overflow:hidden;}
.note a{color:#db7f7f; padding-left:18px; cursor:pointer; background:url(../images/icon-note.gif) no-repeat 3px 50%; background-size:10px; }
#marqueebox1{margin:0; /*float:left; width:70%;*/ text-align:center; }
.big-pic{width:100%; overflow:hidden;}
.big-pic-in, .pic-list, .pic-list img{position:relative; width:320px; height:150px; }
.big-pic-in{-webkit-transform:translateZ(0);}
.big-pic-in{overflow:hidden; margin:0 auto;}
.pic-list{-webkit-transform:translate3d(0, 0, 0);}
.big-pic a{float:left;}
.big-pic a p{width:320px;}
.big-pic a p:first-child {height: 120px;}
.big-pic3 .pic-list {width: 960px;}
.big-pic4 .pic-list {width: 1280px;}
.cap{height:30px; line-height:30px; padding:0 10px; color:#fff; display:block; background:#000; opacity:0.8; font-size:14px; overflow:hidden;}
.slide-dot{position:absolute; bottom:12px; right:5px;}
.slide-dot span{float:left; border-radius:5px; background:#69aac1; height:4px; width:10px; margin:0 3px;}
.slide-dot .slide-dot-cur{height:6px; width:12px; background:#fff; margin-top:-1px;}
.slide {width:100%; overflow:hidden;}
.slide-con {-webkit-transform:translate3d(0, 0, 0);}
.slide-item {float:left;}
.slide-con2 {width:200%;} .slide-con2 .slide-item {width:50%;}
.slide-con3 {width:300%;} .slide-con3 .slide-item {width:33.33%;}
.slide-con4 {width:400%;} .slide-con4 .slide-item {width:25%;}
.slide-con5 {width:400%;} .slide-con5 .slide-item {width:20%;}
.slide-con6 {width:500%;} .slide-con6 .slide-item {width:20%;}
.slide-con61{width:600%;} .slide-con61 .slide-item{width:16.66%;}
.slide-con7 {width:700%;} .slide-con7 .slide-item {width:14.286%;}
.slide-con8 {width:800%;} .slide-con8 .slide-item {width:12.5%;}
.transition {-webkit-transition:-webkit-transform 0.3s ease-out; -o-transition:-o-transform 0.3s ease-out; transition: transform 0.3s ease-out;}
.tabArea{width:100%; overflow:hidden; margin:0 auto;}
.tab-navarea{background:#68aac2; width:100%;}
.tabArea .tab-nav{height:40px; overflow:hidden;}
.tabArea .tab-nav h2{font-size:16px; background:#68aac2; float:left; width:33.3%; text-align:center; height:40px; line-height:40px; cursor:pointer;}
.tabArea .tab-nav h2 a{color:#d2e4eb; text-shadow:1px 1px #3c84a6;}
.tabArea .tab-nav h2 .tab-nav-cur{color:#fff; border-bottom:2px #fff solid; padding-bottom:5px;}
.tabArea2 .tab-nav h2{width:50%;}
.tabArea4 .tab-nav h2{width:25%;}
.tabArea5 .tab-nav h2{width:20%;}
.tabArea6 .tab-nav h2{width:16.66%;}
.tabArea7 .tab-nav h2{width:14.286%;}
.tabArea8 .tab-nav h2{width:12.5%; font-size:15px;}
.tabArea8 .tab-nav h2 .tab-nav-cur{font-size:16px;}
.bannerLink p{font-size:16px; padding:0 10px; height:40px; display:block; line-height:40px; overflow:hidden;}
.bannerLink .sort{margin-right:10px;}
.bannerLink .em{background:#f6fcff;}
.recommend{width:100%; clear:both;}
.recommend h2{font-size:16px; height:40px; line-height:40px; background:#68aac2; padding:0 10px;}
.recommend h2 a{color:#fff; text-shadow:1px 1px #2a779d;}
.recommend .more{float:right; margin-top:-40px;}
.hot_sale{clear:both; background:#edfaff; border-top:2px #edfaff solid; border-bottom:2px #edfaff solid; overflow:hidden;}
.hot_sale{position:relative; height:145px; padding:7px 10px 0 110px;}
.hot_sale img{position:absolute; left:10px; top:10px; border:1px #b4dae8 solid; width:87px; height:117px;}
.hot_sale .title{color:#375868; font-size:16px;}
.hot_sale .author, .hot_sale .review{font-size:14px; color:#7f9ba8; line-height:22px;}
.hot_sale .review{line-height:20px;}
.hot_sale:hover{background:#d9f5ff; border-bottom:2px #9dcada solid; border-top:2px #9dcada solid;}
.hot_saleEm{background:#fff; border-bottom:2px #fff solid; border-top:2px #fff solid;}
.girl .hot_sale:hover{background:#fef1f5; border-bottom:2px #ffdee9 solid; border-top:2px #ffdee9 solid;}
.partner .hot_sale:hover{background:#fbfff2; border-bottom:2px #dce59a solid; border-top:2px #dce59a solid;}
.hot_salehavDate .author{margin-bottom:2px;}
.hot_sale .date{color:#e76767; font-size:12px; margin-bottom:4px;}
.hot_link div{clear:both; padding:2px 10px 2px 50px; height:52px; position:relative; border-top:1px #fff solid; border-bottom:1px #fff solid;}
.hot_link .em{background:#f6fcff;}
.hot_link .sort{width:18px; padding-right:8px; position:absolute; left:10px; top:10px; border-right:2px #a9bfc8 solid; font-size:14px;}
.hot_link .title{font-size:14px; color:#375868; line-height:30px; height:30px; overflow:hidden;}
.hot_link .review{color:#7f9ba8; font-size:12px; line-height:10px;}
.hot_link div:hover{background:#f6fcff; border-top:1px #d1e5ec solid; border-bottom:1px #d1e5ec solid;}
.directorySel, .directorySel2{text-align:center;}
.directorySel{width:95%; display:block; margin:0 auto; margin-top:10px;}
.directorySel2{font-size:14px; margin:0 4px;}
.directoryArea p, .directoryLink, .directoryLink a{height:40px; line-height:40px; font-size:16px;}
.directoryArea p{height:auto;}
.directoryArea p{padding:0 10px;}
.directoryArea .em{background:#f6fcff;}
.directoryArea img{margin-left:8px;}
.directoryLink a{float:left; width:33.3%; text-align:center;}
.Readpage{font-size:14px; padding:0; background:#d4eaf2; height:40px; line-height:40px; text-align:center;}
.Readpage a{font-size:16px; padding:8px 12px; line-height:35px;}
.Readpage .Readpage_up{color: #2a779d; background:url(../images/bg-pageup.png) no-repeat 0 70%; padding-left:27px; background-size:90px;}
.Readpage .Readpage_down{text-shadow: 1px 1px #2a779d; color:#fff; background:url(../images/bg-pagedown.png) no-repeat 0px 50%; padding-right:27px; background-size:90px;}
.Readpage .page_txt{width:45px; padding:4px; border:1px #68aac2 solid; font-size:14px; margin-left:15px; background:#f2fcff;}
.Readpage .page_btn{font-size:14px; border:none; background:none; color:#4c6978; padding:4px 5px; margin-right:15px; background:#f2fcff; font-weight:bold;}
/*搜索结果页*/
.searchInfo{text-align:center; padding:0 10px; margin-bottom:10px; font-size:16px; line-height:28px;}
.searchInfo em{color:#db7f7f;}
.searchrec h2{margin-bottom:5px;}
.searchrec p {padding:5px 10px;}
.searchrec p a{margin-right:13px; color:#68AAC2; font-size:16px;}
.searchInfo label{margin-right:10px; line-height:20px; font-size:14px;}
.mybook em{color:#d25151;}
.mybook .hot_sale p{line-height:20px;}
.mybook .date{margin:0;}
.mybook .hot_sale{padding:7px 8px 5px 40px; height:auto; overflow:hidden;}
.mybook .hot_sale div a{width:80px; height:30px; line-height:30px; text-align:center; font-size:12px; border-radius:5px; color:#fff; margin-left:3px;}
.mybook .hot_sale img{left:5px;}
.mybook .hot_sale .author{font-size:12px;}
.mybook .hot_sale div .dashang{background:#ff3e3e;}
.mybook .hot_sale div .tuijian{background:#68aac2;}
.mybook .hot_sale div .kuaiding{background:#b3b3b3;}
.mybook .num{position:absolute; left:5px; top:10px; text-align:center; letter-spacing:-1px; height:25px; width:30px; line-height:25px; background:#B3B3B3; color:#fff; border-radius:5px;}
.mybook .num1{background:#FF3E3E;}
.mybook .num2{background:#68aac2;}
.page{background:#68aac2; padding:0 10px; color:#c5d7df; height:40px; line-height:40px; text-align:center;}
.page a{color:#fff; margin:0 5px;}
.pageinput{float:right;}
.page .page_txt{padding:2px 5px; border:1px #c5d7df solid; background:#f6fcff; color:#4c6978; border-radius:5px; font-size:14px; width:80px; margin-right:5px; color:#333; text-align:center;}
.hot_sale .btn{margin-top:5px; height:auto; overflow:hidden; line-height:normal;}
.hot_sale .btn_inpt{font-size:14px; line-height:30px; background:#68aac2; color:#fff; border:0; font-family:"微软雅黑"; margin-right:8px; padding:8px 15px; padding-top:0;}
.hot_sale .btn_inptem{background:#d25151;}
.booklist .hot_sale{padding:5px 10px 8px 10px;}
.booklist h3{padding:10px; font-size:14px;}
.booklist h3 a{color:#d25151;}
/***************************************************************************************/
*{margin:0; padding:0;/* background-attachment:fixed;*/}
div,p{wrap-work: break-word; word-break: break-all; word-wrap:break-word; word-break:normal; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; box-sizing:border-box; -ms-box-sizing:border-box;}
li{list-style:none;}
em{font-style:normal;}
body{color:#4c6978; font:14px 'microsoft yahei',Arial,Helvetica,sans-serif;}
input,textarea{font:12px '宋体',Arial,Helvetica,sans-serif; -moz-box-sizing:border-box; -webkit-box-sizing:border-box; -box-sizing:border-box;}
img{border:none;}
a{color:#4c6978; text-decoration:none; border:none; cursor:pointer;}
a:hover{text-decoration:none;}
.clearfix:after {clear: both; content: "."; display: block; height: 0; visibility: hidden;}
.clearfix {display: inline-block;}
*html .clearfix {height: 1%;}
.clearfix {display: block;}
h1,h2,h3,h4,h5,h6{font-size:16px; font-weight:normal;}
footer{padding:15px 10px; text-align:center; line-height:33px; background:#68aac2; position:relative; font-size:14px;}
footer .version a{margin:0 10px; color:#c5d7df; text-shadow:1px 1px #3e86a8;}
footer .version .sel{color:#fff; font-size:16px;}
footer .link a{margin:0 10px; color:#accad6; font-size:14px;}
footer img{position:absolute; right:25px; top:15px; cursor:pointer; width:31px;}
footer .channel a{margin:0 5px; color:#c5d7df; text-shadow:1px 1px #3e86a8;}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

View File

@ -1,23 +0,0 @@
(function(){function p(){this.c="1264351521";this.ca="z";this.Y="";this.V="";this.X="";this.D="1566422043";this.$="z8.cnzz.com";this.W="";this.H="CNZZDATA"+this.c;this.G="_CNZZDbridge_"+this.c;this.O="_cnzz_CV"+this.c;this.P="CZ_UUID"+this.c;this.K="UM_distinctid";this.A="0";this.J={};this.a={};this.Ca()}function h(a,
b){try{var c=[];c.push("siteid=1264351521");c.push("name="+g(a.name));c.push("msg="+g(a.message));c.push("r="+g(l.referrer));c.push("page="+g(e.location.href));c.push("agent="+g(e.navigator.userAgent));c.push("ex="+g(b));c.push("rnd="+Math.floor(2147483648*Math.random()));(new Image).src="http://jserr.cnzz.com/log.php?"+c.join("&")}catch(d){}return!0}var q=function(){for(var a=document.getElementsByTagName("script"),b=0,c=a.length;b<c;b++){var d,f=a[b];if(f.src&&(d=/^(https?:)\/\/[\w\.\-]+\.cnzz\.com\//i.exec(f.src)))return d[1]}return window.location.protocol}(),
l=document,e=window,g=encodeURIComponent,m=decodeURIComponent,x=unescape,z=q+"//c.cnzz.com/core.php",A=q+"//ca.cnzz.com";p.prototype={Ca:function(){try{this.ma(),this.ja(),this.ha(),this.U(),this.ya(),this.S(),this.Ba(),this.w(),this.wa(),this.va(),this.za(),this.o(),this.ua(),this.xa(),this.Aa(),this.sa(),this.qa(),this.ta(),this.Ga(),e[this.G]=e[this.G]||{},this.ra("_cnzz_CV")}catch(a){h(a,"i failed")}},ja:function(){for(var a=document.getElementsByTagName("script"),b=new RegExp("^(https:|http:)?//.+\\.cnzz\\.com/[a-z0-9_]+\\.php\\?.*id="+
this.c,"i"),c=a.length-1;0<=c;c--){var d=a[c];d.src&&b.test(d.src)&&d.async&&(this.A="1")}},Ea:function(){try{var a=this;e._czc={push:function(){return a.L.apply(a,arguments)}}}catch(b){h(b,"oP failed")}},qa:function(){try{var a=e._czc;if("[object Array]"==={}.toString.call(a))for(var b=0;b<a.length;b++){var c=a[b];switch(c[0]){case "_setAccount":e._cz_account="[object String]"==={}.toString.call(c[1])?c[1]:String(c[1]);break;case "_setAutoPageview":"boolean"===typeof c[1]&&(e._cz_autoPageview=c[1])}}}catch(d){h(d,
"cS failed")}},Ga:function(){try{if("undefined"===typeof e._cz_account||e._cz_account===this.c){e._cz_account=this.c;if("[object Array]"==={}.toString.call(e._czc))for(var a=e._czc,b=0,c=a.length;b<c;b++)this.L(a[b]);this.Ea()}}catch(d){h(d,"pP failed")}},L:function(a){try{if("[object Array]"==={}.toString.call(a))switch(a[0]){case "_trackPageview":if(a[1]){this.a.f=q+"//"+e.location.host;"/"!==a[1].charAt(0)&&(this.a.f+="/");this.a.f+=a[1];if(""===a[2])this.a.g="";else if(a[2]){var b=a[2];"http"!==
b.substr(0,4)&&(b=q+"//"+e.location.host,"/"!==a[2].charAt(0)&&(b+="/"),b+=a[2]);this.a.g=b}this.s();"undefined"!==typeof this.a.g&&delete this.a.g;"undefined"!==typeof this.a.f&&delete this.a.f}break;case "_trackEvent":var c=[];a[1]&&a[2]&&(c.push(g(a[1])),c.push(g(a[2])),c.push(a[3]?g(a[3]):""),a[4]=parseFloat(a[4]),c.push(isNaN(a[4])?0:a[4]),c.push(a[5]?g(a[5]):""),this.v=c.join("|"),this.s(),delete this.v);break;case "_setCustomVar":if(3<=a.length){if(!a[1]||!a[2])return!1;var d=a[1],f=a[2],k=
a[3]||0;a=0;for(var n in this.a.b)a++;if(5<=a)return!1;var u=0==k?"p":-1==k||-2==k?k:(new Date).getTime()+1E3*k;this.a.b[d]={};this.a.b[d].da=f;this.a.b[d].h=u;this.I()}break;case "_deleteCustomVar":2<=a.length&&(d=a[1],this.a.b[d]&&(delete this.a.b[d],this.I()));break;case "_trackPageContent":a[1]&&(this.F=a[1],this.s(),delete this.F);case "_trackPageAction":c=[];a[1]&&a[2]&&(c.push(g(a[1])),c.push(g(a[2])),this.u=c.join("|"),this.s(),delete this.u);break;case "_setUUid":var w=a[1];if(128<w.length)return!1;
var v=new Date;v.setTime(v.getTime()+157248E5);this.aa(this.P,w,v)}}catch(r){h(r,"aC failed")}},ta:function(){try{var a=this.m(this.O);this.a.b={};if(a){var b=a.split("&");for(a=0;a<b.length;a++){var c=m(b[a]);var d=c.split("|");this.a.b[m(d[0])]={};this.a.b[m(d[0])].da=m(d[1]);this.a.b[m(d[0])].h=m(d[2])}}}catch(f){h(f,"gCV failed")}},ia:function(){try{var a=(new Date).getTime(),b;for(b in this.a.b)"p"===this.a.b[b].h?this.a.b[b].h=0:"-1"!==this.a.b[b].h&&a>this.a.b[b].h&&delete this.a.b[b];this.I()}catch(c){h(c,
"cCV failed")}},I:function(){try{var a=[],b;for(b in this.a.b){var c=[];c.push(b);c.push(this.a.b[b].da);c.push(this.a.b[b].h);var d=c.join("|");a.push(d)}if(0===a.length)return!0;var f=new Date;f.setTime(f.getTime()+157248E5);var k=this.O+"=";this.b=g(a.join("&"));k+=this.b;k+="; expires="+f.toUTCString();l.cookie=k+"; path=/"}catch(n){h(n,"sCV failed")}},sa:function(){try{return this.N=e.location.href}catch(a){h(a,"gCP failed")}},o:function(){try{return this.a.Ha=l.referrer||""}catch(a){h(a,"gR failed")}},
ua:function(){try{return this.a.B=e.navigator.systemLanguage||e.navigator.language,this.a.B=this.a.B.toLowerCase(),this.a.B}catch(a){h(a,"gL failed")}},xa:function(){try{return this.a.ba=e.screen.width&&e.screen.height?e.screen.width+"x"+e.screen.height:"0x0",this.a.ba}catch(a){h(a,"gS failed")}},w:function(){try{return this.a.Da=this.i("ntime")||"none"}catch(a){h(a,"gLVST failed")}},T:function(){try{return this.a.ea=this.i("ltime")||(new Date).getTime()}catch(a){h(a,"gFVBT failed")}},wa:function(){try{var a=
this.i("cnzz_a");if(null===a)a=0;else{var b=1E3*this.w(),c=new Date;c.setTime(b);(new Date).getDate()===c.getDate()?a++:a=0}return this.a.La=a}catch(d){h(d,"gRT failed")}},va:function(){try{return this.a.C=this.i("rtime"),null===this.a.C&&(this.a.C=0),0<this.T()&&432E5<(new Date).getTime()-this.T()&&(this.a.C++,this.a.ea=(new Date).getTime()),this.a.C}catch(a){h(a,"gRVT failed")}},za:function(){try{return"none"===this.w()?this.a.Ka=0:this.a.Ka=parseInt(((new Date).getTime()-1E3*this.w())/1E3)}catch(a){h(a,
"gST failed")}},ya:function(){try{var a=this.i("sin")||"none";if(!l.domain)return this.a.Ja="none";this.o().split("/")[2]!==l.domain&&(a=this.o());return this.a.Ja=a}catch(b){h(b,"gS failed")}},S:function(){try{return this.a.l=this.i("cnzz_eid")||"none"}catch(a){h(a,"gC failed")}},Ia:function(){try{var a=z+"?",b=[];b.push("web_id="+g(this.c));this.Y&&b.push("show="+g(this.Y));this.X&&b.push("online="+g(this.X));this.V&&b.push("l="+g(this.V));this.ca&&b.push("t="+this.ca);a+=b.join("&");this.na(a,
"utf-8")}catch(c){h(c,"rN failed")}},ha:function(){try{return!1===e.navigator.cookieEnabled?this.a.la=!1:this.a.la=!0}catch(a){h(a,"cCE failed")}},aa:function(a,b,c,d,f,k){a=g(a)+"="+g(b);c instanceof Date&&(a+="; expires="+c.toGMTString());d&&(a+="; path="+d);f&&(a+="; domain="+f);k&&(a+="; secure");l.cookie=a},m:function(a){try{a+="=";var b=l.cookie,c=b.indexOf(a),d="";if(-1<c){var f=b.indexOf(";",c);-1===f&&(f=b.length);d=m(b.substring(c+a.length,f))}return d?d:""}catch(k){h(k,"gAC failed")}},
ra:function(a){try{l.cookie=a+"=; expires="+(new Date(0)).toUTCString()+"; path=/"}catch(b){h(b,"dAC failed")}},Aa:function(){try{var a=l.title;1<e._cz_loaded[this.c]&&(a="__cnzz,pv,"+e._cz_loaded[this.c]+"__"+a);40<a.length&&(a=a.substr(0,40),a+="...");this.a.Fa=a}catch(b){h(b,"gT failed")}},ma:function(){e._cz_loaded=e._cz_loaded||{};e._cz_loaded[this.c]?e._cz_loaded[this.c]++:e._cz_loaded[this.c]=1},M:function(a){try{return"http"!==a.substr(0,4)?"":(new RegExp(q+"//.*?/","i")).exec(a)}catch(b){h(b,
"cH failed")}},U:function(){try{var a=this.H,b={},c=this.m(this.H);if(0<c.length)if(1E8<this.c){var d=c.split("|");b.cnzz_eid=m(d[0]);b.ntime=m(d[1])}else{d=c.split("&");for(var f=0,k=d.length;f<k;f++){var n=d[f].split("=");b[m(n[0])]=m(n[1])}}this.J=b}catch(u){h(u,"iC failed:"+a+":"+c)}},Z:function(){try{var a=this.H+"=",b=[],c=new Date;c.setTime(c.getTime()+157248E5);if(1E8<this.c){if("none"!==this.a.l)b.push(g(this.a.l));else{var d=Math.floor(2147483648*Math.random())+"-"+this.D+"-"+this.M(this.o());
b.push(g(d))}b.push(this.D);0<b.length?(a+=g(b.join("|")),a+="; expires="+c.toUTCString(),a+="; path=/"):a+="; expires="+(new Date(0)).toUTCString()}else"none"!==this.a.l?b.push("cnzz_eid="+g(this.a.l)):(d=Math.floor(2147483648*Math.random())+"-"+this.D+"-"+this.M(this.o()),b.push("cnzz_eid="+g(d))),b.push("ntime="+this.D),0<b.length?(a+=g(b.join("&")),a+="; expires="+c.toUTCString(),a+="; path=/"):a+="; expires="+(new Date(0)).toUTCString();l.cookie=a}catch(f){h(f,"sS failed")}},i:function(a){try{return"undefined"!==
typeof this.J[a]?this.J[a]:null}catch(b){h(b,"gCPa failed")}},na:function(a,b){try{if(b=b||"utf-8","1"===this.A){var c=l.createElement("script");c.type="text/javascript";c.async=!0;c.charset=b;c.src=a;var d=l.getElementsByTagName("script")[0];d.parentNode&&d.parentNode.insertBefore(c,d)}else l.write(x("%3Cscript src='"+a+"' charset='"+b+"' type='text/javascript'%3E%3C/script%3E"))}catch(f){h(f,"cAS failed")}},pa:function(a,b){try{var c=l.getElementById("cnzz_stat_icon_"+this.c);if(c){var d=l.createElement("script");
d.type="text/javascript";d.async=!0;d.charset=b;d.src=a;c.appendChild(d)}else"0"===this.A&&l.write(x("%3Cscript src='"+a+"' charset='"+b+"' type='text/javascript'%3E%3C/script%3E"))}catch(f){h(f,"cSI failed")}},oa:function(a){try{for(var b=a.length,c="",d=0;d<b;d++)a[d]&&(c+=x(a[d]));var f=l.getElementById("cnzz_stat_icon_"+this.c);f?f.innerHTML=c:"0"===this.A&&l.write(c)}catch(k){h(k,"cI failed")}},s:function(){try{this.Z();this.U();this.S();this.ia();var a=this.m(this.P),b=[];b.push("id="+g(this.c));
this.a.g||""===this.a.g?b.push("r="+g(this.a.g)):b.push("r="+g(this.a.Ha));b.push("lg="+g(this.a.B));b.push("ntime="+g(this.a.Da));b.push("cnzz_eid="+g(this.a.l));b.push("showp="+g(this.a.ba));this.a.f?b.push("p="+g(this.a.f)):"[object String]"==={}.toString.call(this.N)&&b.push("p="+g(this.N));"[object String]"==={}.toString.call(this.v)&&b.push("ei="+g(this.v));"[object String]"==={}.toString.call(this.b)&&b.push("cv="+this.b);"[object String]"==={}.toString.call(this.F)&&b.push("pc="+g(this.F));
"[object String]"==={}.toString.call(this.u)&&b.push("ai="+this.u);a&&b.push("uuid="+g(a));b.push("t="+g(this.a.Fa));b.push("umuuid="+g(this.a.R));b.push("h=1");var c=b.join("&");"[object String]"==={}.toString.call(this.v)?this.j([q+"//ei.cnzz.com/stat.htm?"+c]):this.F||this.u?this.j([A+"/stat.htm?"+c]):(this.W&&this.j([q+"//"+this.W+"/stat.htm?"+c]),this.$&&this.j([q+"//"+this.$+"/stat.htm?"+c]))}catch(d){h(d,"sD failed")}},fa:function(){function a(){function c(w,v){var r,y=0;for(r=0;r<v.length;r++)y|=
k[r]<<8*r;return w^y}var d=e.navigator.userAgent,f,k=[],n=0;for(f=0;f<d.length;f++){var u=d.charCodeAt(f);k.unshift(u&255);4<=k.length&&(n=c(n,k),k=[])}0<k.length&&(n=c(n,k));return n.toString(16)}function b(){for(var c=1*new Date,d=0;c==1*new Date;)d++;return c.toString(16)+d.toString(16)}return function(){var c=(e.screen.height*e.screen.width).toString(16);return b()+"-"+Math.random().toString(16).replace(".","")+"-"+a()+"-"+c+"-"+b()}}(),Ba:function(){try{var a=this.a,b;if(!(b=this.m(this.K))){var c=
this.fa(),d=new Date;d.setTime(d.getTime()+157248E5);var f=document.location.hostname.match(/[a-z0-9][a-z0-9\-]+\.[a-z\.]{2,6}$/i);this.aa(this.K,c,d,"/",f?f[0]:"");b=c}a.R=b;return this.a.R}catch(k){h(k,"gC failed")}},j:function(a){try{for(var b=a.length,c=null,d=0;d<b;d++)a[d]&&(c="cnzz_image_"+Math.floor(2147483648*Math.random()),e[c]=new Image,e[c].ka=c,e[c].onload=e[c].onerror=e[c].onabort=function(){try{this.onload=this.onerror=this.onabort=null,e[this.ka]=null}catch(f){}},e[c].src=a[d]+"&rnd="+
Math.floor(2147483648*Math.random()))}catch(f){h(f,"cR failed")}},ga:function(){for(var a=e.navigator.userAgent.toLowerCase(),b=0;12>b;b++)if(-1<a.indexOf("#mobileconf#"[b]))return"mobile";return"pc"}};try{var t=new p;e[t.G].bobject=t;!1!==e._cz_autoPageview?t.s():t.Z();p.prototype.getACookie=p.prototype.m;p.prototype.callRequest=p.prototype.j;p.prototype.createScriptIcon=p.prototype.pa;p.prototype.createIcon=p.prototype.oa;t.Ia();t.ga()}catch(a){h(a,"main failed")}})();

View File

@ -1,2 +0,0 @@
src/js/util/ierange.js
src/js/util/poly-fill.js

View File

@ -1,38 +0,0 @@
{
"env": {
"browser": true,
"commonjs": true,
"es6": true
},
"globals": {
"ENV": true
},
"extends": "eslint:recommended",
"parserOptions": {
"sourceType": "module"
},
"rules": {
"no-console":0,
"indent": [
"error",
4
],
"linebreak-style": [
"error",
"unix"
],
"quotes": [
"error",
"single",
{
"allowTemplateLiterals": true
}
],
"semi": [
"error",
"never"
],
"no-unused-vars": 0,
"no-debugger": 0
}
}

View File

@ -1,22 +0,0 @@
# Auto detect text files and perform LF normalization
* text=auto
# Custom for Visual Studio
*.cs diff=csharp
*.sln merge=union
*.csproj merge=union
*.vbproj merge=union
*.fsproj merge=union
*.dbproj merge=union
# Standard to msysgit
*.doc diff=astextplain
*.DOC diff=astextplain
*.docx diff=astextplain
*.DOCX diff=astextplain
*.dot diff=astextplain
*.DOT diff=astextplain
*.pdf diff=astextplain
*.PDF diff=astextplain
*.rtf diff=astextplain
*.RTF diff=astextplain

View File

@ -1,51 +0,0 @@
#忽略
**/node_modules/*
node_modules/*
npm-debug.log
example/upload-files
# Windows image file caches
Thumbs.db
ehthumbs.db
# Folder config file
Desktop.ini
# Recycle Bin used on file shares
$RECYCLE.BIN/
# Windows Installer files
*.cab
*.msi
*.msm
*.msp
# =========================
# Operating System Files
# =========================
# OSX
# =========================
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear on external disk
.Spotlight-V100
.Trashes
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

View File

@ -1,5 +0,0 @@
node_modules/*
npm-debug.log
docs/*
src/*
example/*

View File

@ -1,157 +0,0 @@
# 问题记录
## 版本修复
### v3.0.1
- [done] 如何设置自动增加高度补充文档
- [done] src/js/editor/Bar 改为 Progress仅供上传图片使用
- [done] Panel 在右上角增加一个关闭按钮
- [done] 显示页面 tablequotecode 等样式说明一下
- [done] 增加自定义上传回调函数用以自定义返回图片的格式
- [done] 上传附带的参数也加入到 form-data 中一份
- [done] 编辑器默认情况下菜单栏不能点击必须focus了编辑器求之后才能点击
- [done] 点击菜单弹出panel之后再点击编辑器区域其他地方panel不消失
- [done] 自定义filenamev2版本就有
- [done] ff 中的 bug
- [done] ff 中粘贴图片和文字出现问题 https://github.com/wangfupeng1988/wangEditor/issues/609
- [done] 火狐浏览器下创建表格编辑表格内容时会出现两个控制点有人提供了解决方案
- [done] 配置最多上传的文件个数
- [done] 连续给两段内容 添加有/无序列表时样式会出问题且其他内容找不到了并且编辑器不处于编辑状态
- [done] onchange
- [done] IE11下面一直报错并且表格无法正常使用
### v3.0.2
- [done] onchange 完善 vue react demo
- [done] 插入图片之后光标移动到图片的前面然后回车图片消失并且不能撤销
- [done] 修复上传图片 customInsert 无效的bug
- [done] 编辑区域 z-index 可配置
- [done] 上传图片不应该把状态码限制在 200而是 2xx
- [done] editor.txt.html() 之后没有定位光标位置
### v3.0.3
- [done] 粘贴图片在低版本的谷歌浏览器中无法使用提示验证图片未通过undefined不是图片
- [done] 动态赋值内容会自动换行因为给自动加了`<p><br></p>`
- [done] 不选中任何内容点击加粗报错Failed to execute 'setEnd' on 'Range'
- [done] toolbar 小图标的 z-index 可配置
### v3.0.4
- [done] 允许使用者通过`replace`实现多语言
- [done] `_alert()`可自定义配置提示框
- [done] 支持用户自定义上传图片的事件如用户要上传到七牛云阿里云
### v3.0.5
- [done] 图片上传中insertLinkImg 方法中去掉 img.onload 之后再插入的逻辑吧这样会打乱多个图片的顺序
- [done] `<h>` 标签重叠问题两行文字都是`h2`然后将第一行选中设置为`h1`结果是 `<h2><h1>测试1</h1>测试2</h2>`
- [done] 补充 ng 集成的示例 https://github.com/wangfupeng1988/wangEditor/issues/859
- [done] 菜单不能折叠的说明加入到文档中
- [done] 上传图片 before 函数中增加一个判断可以让用户终止图片的上传
### v3.0.6
- [done] src/fonts 中的字体文件名改一下 icomoon 容易发生冲突
- [done] 将禁用编辑器的操作完善到文档中 https://www.kancloud.cn/wangfupeng/wangeditor3/368562
- [done] 开放表格中的粘贴功能之前因不明问题而封闭
- [done] 代码块中光标定位到最后位置时连续两次回车要跳出代码块
### v3.0.7
- [done] 紧急修复上一个版本导致的菜单图标不显示的 bug
### v3.0.8
- [done] 修复 backColor foreColor 代码文件名混淆的问题
- [done] 修改 IE 引用 的功能
- [done] 增加粘贴过滤样式的可配置
- [done] 修复 IE 粘贴文字的问题
### v3.0.9
- [done] config 上传图片的 token 注视掉
- [done] 将一些常见 API 开放写到文档中 https://www.kancloud.cn/wangfupeng/wangeditor3/404586
- [done] IE 火狐 插入多行代码有问题
- [done] 粘贴时`<p>`不能只粘贴纯文本还得要图片
- [done] 粘贴内容中过滤掉`<!--xxx-->`注释
- [done] **支持上传七牛云存储**
### v3.0.10
- [done] 支持插入网络图片的回调函数
- [done] 插入链接时候的格式校验
- [done] 支持拖拽上传
### v3.0.11
- [done] 如何用 textarea 创建编辑器完善到文档中许多人提问
- [done] 修复`editor.customConfig.customUploadImg`不触发的 bug
- [done] 修复有序列表和无序列表切换时 onchange 不触发的 bug
### v3.0.12
- [done] 增加 onfocus onblur 感谢 [hold-baby](https://github.com/hold-baby) 提交的 [PR](https://github.com/wangfupeng1988/wangEditor/pull/1076)
- [done] 上传的自定义参数`editor.customConfig.uploadImgParams`是否拼接到 url 支持可配置
- [done] onchange 触发的延迟时间支持可配置
### v3.0.13
- [done] 修复图片 选中/取消选中 触发 onchange 的问题
- [done] 修复只通过 length 判断 onchange 是否触发的问题
- [done] 增加插入网络图片的校验函数
- [done] 增加自定义处理粘贴文本的事件
- [done] 修复选中一个图片时点击删除键会误删除其他内容的 bug
- [done] 修复 window chrome 复制图片然后粘贴图片会粘贴为两张的 bug
- [done] 修复无法撤销引用的问题
### v3.0.14
- [done] 可以配置前景色背景色
- [done] 回车时无法从`<p><code>....</code></p>`中跳出
- [done] 增加获取 JSON 格式内容的 API
### v3.0.15
- [done] 表情兼容图片和 emoji 都可自定义配置
### v3.0.16
- [done] 修复粘贴图片的 bug
- [done] 修复`pasteTextHandle`执行两次的问题
- [done] 修复插入链接时文字和链接为空时`linkCheck`不执行的 bug
- [done] 粘贴 html 过滤掉其中的`data-xxx`属性
- [done] 修复中文输入法输入过程中出发 onchange 的问题感谢 [github.com/CongAn](https://github.com/CongAn) PR
- [done] `editor.txt.html``editor.txt.text`替换`&#8203`字符为空字符串
- [done] 精确图片大小计算`maxSize / 1000 / 1000`改为`maxSize / 1024 / 1024`
- [done] 修复 droplist 类型菜单颜色背景色等点击不准确的问题
### v3.0.17
- [done] 合并 pr [菜单和编辑区域分离 onfocus onblur 失效bug](https://github.com/wangfupeng1988/wangEditor/pull/1174) 感谢 [hold-baby](https://github.com/hold-baby) 提供 pr
- [done] 使用`document.execCommand("styleWithCSS", null, true)`这样设置字体颜色就会用 css 而不是用`<font color=xxx>`
### 近期计划解决
- 撤销的兼容性问题会误伤其他编辑器或者 input textarea 考虑用 onchange 记录 undo redo 的内容但是得考虑直接修改 dom 的情况 quote code img list table 菜单
- 列表撤销会删除一行https://github.com/wangfupeng1988/wangEditor/issues/1131
- 页面中有 input 等输入标签时undo redo 会误伤 https://github.com/wangfupeng1988/wangEditor/issues/1024
- 两个编辑器 undo 的问题 https://github.com/wangfupeng1988/wangEditor/issues/1010
- list undo redo 有问题选中几行先设置有序列表再设置无序列表然后撤销就能复现问题
- 粘贴文字的样式问题可暂时配置 `pasteTextHandle` 自行处理
- 先输入文字再粘贴 excel 表格样式丢失 https://github.com/wangfupeng1988/wangEditor/issues/1000
- IE 11 直接输入文字会空一行在第二行出现内容 https://github.com/wangfupeng1988/wangEditor/issues/919
- windows word excel 的粘贴存在垃圾数据
## 待排期
- 调研 safariIE 和ff中粘贴图片 https://github.com/wangfupeng1988/wangEditor/issues/831
- 图片调整大小表格调整的方式是否用 toolbar 的方式
- 删除掉`./release`之后执行`npm run release`会报错原因是`fonts`文件没拷贝全就要去替换`css`中的字体文件为`base64`格式导致找不到文件
- 先点击'B'再输入内容这种形式前期先支持 webkit IE火狐的支持后面再加上
- 图片压缩 canvas https://github.com/think2011/localResizeIMG
- github 徽章 https://github.com/EyreFree/GitHubBadgeIntroduction
- 将代码在进行拆分做到每个程序只做一件事不要出现过长的代码文件例如 `src/js/command/index.js` `src/js/selection/index.js`

View File

@ -1,22 +0,0 @@
The MIT License (MIT)
Copyright (c) 2017 王福朋
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,70 +0,0 @@
# wangEditor
## 介绍
**wangEditor** 轻量级 web 富文本编辑器配置方便使用简单支持 IE10+ 浏览器
- 官网[www.wangEditor.com](http://www.wangeditor.com/)
- 文档[www.kancloud.cn/wangfupeng/wangeditor3/332599](http://www.kancloud.cn/wangfupeng/wangeditor3/332599)
- 源码[github.com/wangfupeng1988/wangEditor](https://github.com/wangfupeng1988/wangEditor) 欢迎 star
![图片](http://images2015.cnblogs.com/blog/138012/201705/138012-20170530202905633-1840158981.png)
*查看 v2 版本的代码和文档点击[这里](https://github.com/wangfupeng1988/wangEditor/tree/v2)*
## 下载
- 直接下载[https://github.com/wangfupeng1988/wangEditor/releases](https://github.com/wangfupeng1988/wangEditor/releases)
- 使用`npm`下载`npm install wangeditor` 注意 `wangeditor` 全部是**小写字母**
- 使用`bower`下载`bower install wangEditor` 前提保证电脑已安装了`bower`
- 使用CDN[//unpkg.com/wangeditor/release/wangEditor.min.js](https://unpkg.com/wangeditor/release/wangEditor.min.js)
## 使用
```javascript
var E = window.wangEditor
var editor = new E('#div1')
editor.create()
```
## 运行 demo
- 下载源码 `git clone git@github.com:wangfupeng1988/wangEditor.git`
- 安装或者升级最新版本 node最低`v6.x.x`
- 进入目录安装依赖包 `cd wangEditor && npm i`
- 安装包完成之后windows 用户运行`npm run win-example`Mac 用户运行`npm run example`
- 打开浏览器访问[localhost:3000/index.html](http://localhost:3000/index.html)
- 用于 Reactvue 或者 angular 可查阅[文档](http://www.kancloud.cn/wangfupeng/wangeditor3/332599)[其他](https://www.kancloud.cn/wangfupeng/wangeditor3/335783)章节中的相关介绍
## 交流
### QQ
以下 QQ 群欢迎加入交流问题可能有些群已经满员
- 164999061
- 281268320
### 提问
注意作者只受理以下几种提问方式其他方式直接忽略
- 直接在 [github issues](https://github.com/wangfupeng1988/wangEditor/issues) 提交问题
- [知乎](https://www.zhihu.com/)提问并邀请[作者](https://www.zhihu.com/people/wang-fu-peng-54/activities)来回答
- [segmentfault](https://segmentfault.com)提问并邀请[作者](https://segmentfault.com/u/wangfupeng1988)来回答
每次升级版本修复的问题记录在[这里](./ISSUE.md)
## 关于作者
- 关注作者的博客 - [深入理解javascript原型和闭包系列](http://www.cnblogs.com/wangfupeng1988/p/4001284.html)[深入理解javascript异步系列](https://github.com/wangfupeng1988/js-async-tutorial)[CSS知多少](http://www.cnblogs.com/wangfupeng1988/p/4325007.html)
- 学习作者的教程 - [前端JS基础面试题](http://coding.imooc.com/class/115.html)[React.js模拟大众点评webapp](http://coding.imooc.com/class/99.html)[zepto设计与源码分析](http://www.imooc.com/learn/745)[用grunt搭建自动化的web前端开发环境](http://study.163.com/course/courseMain.htm?courseId=1103003)[json2.js源码解读](http://study.163.com/course/courseMain.htm?courseId=691008)
如果你感觉有收获欢迎给我打赏 以激励我更多输出优质开源内容
![图片](https://camo.githubusercontent.com/e1558b631931e0a1606c769a61f48770cc0ccb56/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3133383031322f3230313730322f3133383031322d32303137303232383131323233373739382d313530373139363634332e706e67)

View File

@ -1,20 +0,0 @@
{
"name": "wangEditor",
"description": "wangEditor - 基于javascript和css开发的 web 富文本编辑器, 轻量、简洁、易用、开源免费",
"main": "release/wangEditor.js",
"authors": [
"wangfupeng <wangfupeng1988@163.com>"
],
"license": "MIT",
"keywords": [
"wangEditor",
"web 富文本编辑器"
],
"homepage": "https://github.com/wangfupeng1988/wangEditor",
"moduleType": [
"amd",
"cmd",
"node"
],
"private": true
}

View File

@ -1,25 +0,0 @@
面向开发者的文档
框架介绍
- 下载和运行
- 目录结构介绍
- `example`目录
- `src`目录`js`目录`less`目录
- `package.json`
- `gulpfile.js`
如何提交 PR
上线
- 修改`package.json`版本
- 提交到github并创建tag
- 提交到 npm
- 更新 .md 文档
- 文档同步到 kancloud
-

View File

@ -1,41 +0,0 @@
# 简单的 demo
## 下载
- 点击 [https://github.com/wangfupeng1988/wangEditor/releases](https://github.com/wangfupeng1988/wangEditor/releases) 下载最新版进入`release`文件夹下找到`wangEditor.js`或者`wangEditor.min.js`即可
- 使用CDN[//unpkg.com/wangeditor/release/wangEditor.min.js](https://unpkg.com/wangeditor/release/wangEditor.min.js)
- 使用`bower`下载`bower install wangEditor` 前提保证电脑已安装了`bower`
*PS支持`npm`安装请参见后面的章节*
## 制作 demo
编辑器效果如下
![图片](https://camo.githubusercontent.com/f3d072718d8fcbbacf8cc80465a34cceffcf5b4a/687474703a2f2f696d61676573323031352e636e626c6f67732e636f6d2f626c6f672f3133383031322f3230313730352f3133383031322d32303137303533303230323930353633332d313834303135383938312e706e67)
代码示例如下**注意以下代码中无需引用任何 CSS 文件**
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>wangEditor demo</title>
</head>
<body>
<div id="editor">
<p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
</div>
<!-- 注意 只需要引用 JS无需引用任何 CSS -->
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#editor')
// 或者 var editor = new E( document.getElementById('#editor') )
editor.create()
</script>
</body>
</html>
```

View File

@ -1,49 +0,0 @@
# 使用模块定义
wangEditor 除了直接使用`<script>`引用之外还支持`AMD``CommonJS`的引用方式
## AMD
`require.js`为例演示
先创建`main.js`代码为
```javascript
require(['/wangEditor.min.js'], function (E) {
var editor = new E('#editor')
editor.create()
})
```
然后创建页面代码为
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>wangEditor demo</title>
</head>
<body>
<div id="editor">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script data-main="./main.js" src="//cdn.bootcss.com/require.js/2.3.3/require.js"></script>
</body>
</html>
```
## CommonJS
可以使用`npm install wangeditor`安装注意这里`wangeditor`全是**小写字母**
```javascript
// 引用
var E = require('wangeditor') // 使用 npm 安装
var E = require('/wangEditor.min.js') // 使用下载的源码
// 创建编辑器
var editor = new E('#editor')
editor.create()
```

View File

@ -1,48 +0,0 @@
# 菜单和编辑区域分离
如果你想要像 知乎专栏简书石墨网易云笔记 这些编辑页面一样将编辑区域和菜单分离也可以实现
这样菜单和编辑器区域就是使用者可自己控制的元素可自定义样式例如将菜单`fixed`编辑器区域高度自动增加等
## 代码示例
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>wangEditor 菜单和编辑器区域分离</title>
<style type="text/css">
.toolbar {
border: 1px solid #ccc;
}
.text {
border: 1px solid #ccc;
height: 400px;
}
</style>
</head>
<body>
<div id="div1" class="toolbar">
</div>
<div style="padding: 5px 0; color: #ccc">中间隔离带</div>
<div id="div2" class="text"> <!--可使用 min-height 实现编辑区域自动增加高度-->
<p>请输入内容</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor1 = new E('#div1', '#div2') // 两个参数也可以传入 elem 对象class 选择器
editor1.create()
</script>
</body>
</html>
```
## 显示效果
从上面代码可以看出菜单和编辑区域其实就是两个单独的`<div>`位置尺寸都可以随便定义
![](http://images2015.cnblogs.com/blog/138012/201705/138012-20170531224756289-7442240.png)

View File

@ -1,50 +0,0 @@
# 同一个页面创建多个编辑器
wangEditor 支持一个页面创建多个编辑器
## 代码示例
```html
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>wangEditor 一个页面多个编辑器</title>
<style type="text/css">
.toolbar {
background-color: #f1f1f1;
border: 1px solid #ccc;
}
.text {
border: 1px solid #ccc;
height: 200px;
}
</style>
</head>
<body>
<div id="div1" class="toolbar">
</div>
<div style="padding: 5px 0; color: #ccc">中间隔离带</div>
<div id="div2" class="text">
<p>第一个 demo菜单和编辑器区域分开</p>
</div>
<div id="div3">
<p>第二个 demo常规</p>
</div>
<!-- 引用js -->
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor1 = new E('#div1', '#div2')
editor1.create()
var editor2 = new E('#div3')
editor2.create()
</script>
</body>
</html>
```

View File

@ -1,46 +0,0 @@
# 设置内容
以下方式中如果条件允许尽量使用第一种方式效率最高
## html 初始化内容
直接将内容写到要创建编辑器的`<div>`标签中
```html
<div id="div1">
<p>初始化的内容</p>
<p>初始化的内容</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.create()
</script>
```
## js 设置内容
创建编辑器之后使用`editor.txt.html(...)`设置编辑器内容
```html
<div id="div1">
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.create()
editor.txt.html('<p> JS 设置的内容</p>')
</script>
```
## 追加内容
创建编辑器之后可使用`editor.txt.append('<p>追加的内容</p>')`继续追加内容
## 清空内容
可使用`editor.txt.clear()`清空编辑器内容

View File

@ -1,80 +0,0 @@
# 读取内容
可以`html``text`的方式读取编辑器的内容
```html
<div id="div1">
<p>欢迎使用 wangEditor 编辑器</p>
</div>
<button id="btn1">获取html</button>
<button id="btn2">获取text</button>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.create()
document.getElementById('btn1').addEventListener('click', function () {
// 读取 html
alert(editor.txt.html())
}, false)
document.getElementById('btn2').addEventListener('click', function () {
// 读取 text
alert(editor.txt.text())
}, false)
</script>
```
需要注意的是**从编辑器中获取的 html 代码是不包含任何样式的纯 html**如果显示的时候需要对其中的`<table>` `<code>` `<blockquote>`等标签进行自定义样式这样既可实现多皮肤功能下面提供了编辑器中使用的样式供参考
```css
/* table 样式 */
table {
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
}
table td,
table th {
border-bottom: 1px solid #ccc;
border-right: 1px solid #ccc;
padding: 3px 5px;
}
table th {
border-bottom: 2px solid #ccc;
text-align: center;
}
/* blockquote 样式 */
blockquote {
display: block;
border-left: 8px solid #d0e5f2;
padding: 5px 10px;
margin: 10px 0;
line-height: 1.4;
font-size: 100%;
background-color: #f1f1f1;
}
/* code 样式 */
code {
display: inline-block;
*display: inline;
*zoom: 1;
background-color: #f1f1f1;
border-radius: 3px;
padding: 3px 5px;
margin: 0 3px;
}
pre code {
display: block;
}
/* ul ol 样式 */
ul, ol {
margin: 10px 0 10px 20px;
}
```

View File

@ -1,25 +0,0 @@
# 使用 textarea
wangEditor `v3`版本开始不支持 textarea 但是可以通过`onchange`来实现 textarea 中提交富文本内容
```html
<div id="div1">
<p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
</div>
<textarea id="text1" style="width:100%; height:200px;"></textarea>
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<script type="text/javascript" src="../wangEditor.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
var $text1 = $('#text1')
editor.customConfig.onchange = function (html) {
// 监控变化同步更新到 textarea
$text1.val(html)
}
editor.create()
// 初始化 textarea 的值
$text1.val(editor.txt.html())
</script>
```

View File

@ -1,82 +0,0 @@
# 获取 JSON 格式的内容
可以通过`editor.txt.getJSON`获取 JSON 格式的编辑器的内容`v3.0.14`开始支持示例如下
```html
<div id="div1">
<p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
<img src="https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo_top_ca79a146.png" style="max-width:100%;"/>
</div>
<button id="btn1">getJSON</button>
<script type="text/javascript" src="/wangEditor.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.create()
document.getElementById('btn1').addEventListener('click', function () {
var json = editor.txt.getJSON() // 获取 JSON 格式的内容
var jsonStr = JSON.stringify(json)
console.log(json)
console.log(jsonStr)
})
</script>
```
-----
如果编辑器区域的 html 内容是如下
```html
<p>欢迎使用 <b>wangEditor</b> 富文本编辑器</p>
<img src="https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo_top_ca79a146.png" style="max-width:100%;"/>
```
那么获取的 JSON 格式就如下
```json
[
{
"tag": "p",
"attrs": [],
"children": [
"欢迎使用 ",
{
"tag": "b",
"attrs": [],
"children": [
"wangEditor"
]
},
" 富文本编辑器"
]
},
{
"tag": "img",
"attrs": [
{
"name": "src",
"value": "https://ss0.bdstatic.com/5aV1bjqh_Q23odCf/static/superman/img/logo_top_ca79a146.png"
},
{
"name": "style",
"value": "max-width:100%;"
}
],
"children": []
},
{
"tag": "p",
"attrs": [],
"children": [
{
"tag": "br",
"attrs": [],
"children": []
}
]
}
]
```

View File

@ -1,52 +0,0 @@
# 自定义菜单
编辑器创建之前可使用`editor.customConfig.menus`定义显示哪些菜单和菜单的顺序**注意v3 版本的菜单不支持换行折叠了因为换行之后菜单栏是在太难看如果菜单栏宽度不够建议精简菜单项**
## 代码示例
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 自定义菜单配置
editor.customConfig.menus = [
'head',
'bold',
'italic',
'underline'
]
editor.create()
</script>
```
## 默认菜单
编辑默认的菜单配置如下
```javascript
[
'head', // 标题
'bold', // 粗体
'italic', // 斜体
'underline', // 下划线
'strikeThrough', // 删除线
'foreColor', // 文字颜色
'backColor', // 背景颜色
'link', // 插入链接
'list', // 列表
'justify', // 对齐方式
'quote', // 引用
'emoticon', // 表情
'image', // 插入图片
'table', // 表格
'video', // 插入视频
'code', // 插入代码
'undo', // 撤销
'redo' // 重复
]
```

View File

@ -1,21 +0,0 @@
# 定义 debug 模式
可通过`editor.customConfig.debug = true`配置`debug`模式`debug`模式下 JS 错误会以`throw Error`方式提示出来默认值为`false`即不会抛出异常
但是在实际开发中不建议直接定义为`true`或者`false`可通过 url 参数进行干预示例如下
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 通过 url 参数配置 debug 模式url 中带有 wangeditor_debug_mode=1 才会开启 debug 模式
editor.customConfig.debug = location.href.indexOf('wangeditor_debug_mode=1') > 0
editor.create()
</script>
```

View File

@ -1,40 +0,0 @@
# 配置 onchange 函数
配置`onchange`函数之后用户操作鼠标点击键盘打字等导致的内容变化之后会自动触发`onchange`函数执行
但是**用户自己使用 JS 修改了`div1``innerHTML`不会自动触发`onchange`函数**此时你可以通过执行`editor.change()`来手动触发`onchange`函数的执行
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<p>手动触发 onchange 函数执行</p>
<button id="btn1">change</button>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.onchange = function (html) {
// html 即变化之后的内容
console.log(html)
}
editor.create()
document.getElementById('btn1').addEventListener('click', function () {
// 如果未配置 editor.customConfig.onchange editor.change undefined
editor.change && editor.change()
})
</script>
```
-----
另外如果需要修改 onchange 触发的延迟时间onchange 会在用户无任何操作的 xxx 毫秒之后被触发可通过如下配置
```js
// 自定义 onchange 触发的延迟时间默认为 200 ms
editor.customConfig.onchangeTimeout = 1000 // 单位 ms
```

View File

@ -1,19 +0,0 @@
# 配置编辑区域的 z-index
编辑区域的`z-index`默认为`10000`可自定义修改代码配置如下需改之后编辑区域和菜单的`z-index`会同时生效
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.zIndex = 100
editor.create()
</script>
```

View File

@ -1,30 +0,0 @@
# 多语言
可以通过`lang`配置项配置多语言其实就是通过该配置项中的配置将编辑器显示的文字替换成你需要的文字
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.lang = {
'设置标题': 'title',
'正文': 'p',
'链接文字': 'link text',
'链接': 'link',
'上传图片': 'upload image',
'上传': 'upload',
'创建': 'init'
// 还可自定添加更多
}
editor.create()
</script>
```
**注意以上代码中的`链接文字`要写在`链接`前面`上传图片`要写在`上传`前面因为前者包含后者如果不这样做可能会出现替换不全的问题切记切记**

View File

@ -1,33 +0,0 @@
# 粘贴文本
**注意以下配置暂时对 IE 无效IE 暂时使用系统自带的粘贴功能没有样式过滤**
## 关闭粘贴样式的过滤
当从其他网页复制文本内容粘贴到编辑器中编辑器会默认过滤掉复制文本中自带的样式目的是让粘贴后的文本变得更加简洁和轻量用户可通过`editor.customConfig.pasteFilterStyle = false`手动关闭掉粘贴样式的过滤
## 自定义处理粘贴的文本内容
使用者可通过`editor.customConfig.pasteTextHandle`对粘贴的文本内容进行自定义的过滤处理等操作然后返回处理之后的文本内容编辑器最终会粘贴用户处理之后并且返回的的内容
## 示例代码
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 关闭粘贴样式的过滤
editor.customConfig.pasteFilterStyle = false
// 自定义处理粘贴的文本内容
editor.customConfig.pasteTextHandle = function (content) {
// content 即粘贴过来的内容html 纯文本可进行自定义处理然后返回
return content + '<p>在粘贴内容后面追加一行</p>'
}
editor.create()
</script>
```

View File

@ -1,12 +0,0 @@
# 插入网络图片的回调
插入网络图片时可通过如下配置获取到图片的信息`v3.0.10`开始支持
```js
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.linkImgCallback = function (url) {
console.log(url) // url 即插入图片的地址
}
editor.create()
```

View File

@ -1,16 +0,0 @@
# 插入链接的校验
插入链接时可通过如下配置对文字和链接进行校验`v3.0.10`开始支持
```js
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.linkCheck = function (text, link) {
console.log(text) // 插入的文字
console.log(link) // 插入的链接
return true // 返回 true 表示校验成功
// return '验证失败' // 返回字符串即校验失败的提示信息
}
editor.create()
```

View File

@ -1,19 +0,0 @@
# 配置 onfocus 函数
配置`onfocus`函数之后用户点击富文本区域会触发`onfocus`函数执行
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.onfocus = function () {
console.log("onfocus")
}
editor.create()
</script>
```

View File

@ -1,20 +0,0 @@
# 配置 onblur 函数
配置`onblur`函数之后如果当前有手动获取焦点的富文本并且鼠标点击富文本以外的区域则会触发`onblur`函数执行
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.onblur = function (html) {
// html 即编辑器中的内容
console.log('onblur', html)
}
editor.create()
</script>
```

View File

@ -1,15 +0,0 @@
# 插入网络图片的校验
插入网络图片时可对图片地址做自定义校验`v3.0.13`开始支持
```js
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.linkImgCheck = function (src) {
console.log(src) // 图片的链接
return true // 返回 true 表示校验成功
// return '验证失败' // 返回字符串即校验失败的提示信息
}
editor.create()
```

View File

@ -1,29 +0,0 @@
# 配置字体颜色背景色
编辑器的字体颜色和背景色可以通过`editor.customConfig.colors`自定义配置
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 自定义配置颜色字体颜色背景色
editor.customConfig.colors = [
'#000000',
'#eeece0',
'#1c487f',
'#4d80bf',
'#c24f4a',
'#8baa4a',
'#7b5ba1',
'#46acc8',
'#f9963b',
'#ffffff'
]
editor.create()
</script>
```

View File

@ -1,48 +0,0 @@
# 配置表情
`v3.0.15`开始支持配置表情支持图片格式和 emoji 可通过`editor.customConfig.emotions`配置**注意看代码示例中的注释**
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 表情面板可以有多个 tab 因此要配置成一个数组数组每个元素代表一个 tab 的配置
editor.customConfig.emotions = [
{
// tab 的标题
title: '默认',
// type -> 'emoji' / 'image'
type: 'image',
// content -> 数组
content: [
{
alt: '[坏笑]',
src: 'http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/50/pcmoren_huaixiao_org.png'
},
{
alt: '[舔屏]',
src: 'http://img.t.sinajs.cn/t4/appstyle/expression/ext/normal/40/pcmoren_tian_org.png'
}
]
},
{
// tab 的标题
title: 'emoji',
// type -> 'emoji' / 'image'
type: 'emoji',
// content -> 数组
content: ['😀', '😃', '😄', '😁', '😆']
}
]
editor.create()
</script>
```
温馨提示需要表情图片可以去 https://api.weibo.com/2/emotions.json?source=1362404091 http://yuncode.net/code/c_524ba520e58ce30 逛一逛或者自己搜索

View File

@ -1,52 +0,0 @@
# 隐藏/显示 tab
## 显示上传图片tab
默认情况下编辑器不会显示上传图片的tab因为你还没有配置上传图片的信息
![](http://images2015.cnblogs.com/blog/138012/201706/138012-20170601204308039-691571074.png)
参考一下示例显示上传图片tab
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 下面两个配置使用其中一个即可显示上传图片的tab但是两者不要同时使用
// editor.customConfig.uploadImgShowBase64 = true // 使用 base64 保存图片
// editor.customConfig.uploadImgServer = '/upload' // 上传图片到服务器
editor.create()
</script>
```
显示效果
![](http://images2015.cnblogs.com/blog/138012/201706/138012-20170601204504524-830243744.png)
## 隐藏网络图片tab
默认情况下网络图片tab是一直存在的如果不需要可以参考一下示例来隐藏它
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 隐藏网络图片tab
editor.customConfig.showLinkImg = false
editor.create()
</script>
```

View File

@ -1,23 +0,0 @@
# 使用 base64 保存图片
如果需要使用 base64 编码直接将图片插入到内容中可参考一下示例配置
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
editor.customConfig.uploadImgShowBase64 = true // 使用 base64 保存图片
editor.create()
</script>
```
示例效果如下
![](http://images2015.cnblogs.com/blog/138012/201706/138012-20170601204759258-1412289899.png)

View File

@ -1,188 +0,0 @@
# 上传图片 & 配置
将图片上传到服务器上的配置方式
## 上传图片
参考如下代码
```html
<div id="div1">
<p>欢迎使用 wangEditor 富文本编辑器</p>
</div>
<script type="text/javascript" src="/wangEditor.min.js"></script>
<script type="text/javascript">
var E = window.wangEditor
var editor = new E('#div1')
// 配置服务器端地址
editor.customConfig.uploadImgServer = '/upload'
// 进行下文提到的其他配置
//
//
//
editor.create()
</script>
```
其中`/upload`是上传图片的服务器端接口接口返回的**数据格式**如下**实际返回数据时不要加任何注释**
```json
{
// errno 即错误代码0 表示没有错误
// 如果有错误errno != 0可通过下文中的监听函数 fail 拿到该错误码进行自定义处理
"errno": 0,
// data 是一个数组返回若干图片的线上地址
"data": [
"图片1地址",
"图片2地址",
"……"
]
}
```
## 限制图片大小
默认限制图片大小是 5M
```javascript
// 将图片大小限制为 3M
editor.customConfig.uploadImgMaxSize = 3 * 1024 * 1024
```
## 限制一次最多能传几张图片
默认为 10000 即不限制需要限制可自己配置
```javascript
// 限制一次最多上传 5 张图片
editor.customConfig.uploadImgMaxLength = 5
```
## 自定义上传参数
上传图片时可自定义传递一些参数例如传递验证的`token`参数会被添加到`formdata`
```javascript
editor.customConfig.uploadImgParams = {
token: 'abcdef12345' // 属性值会自动进行 encode 此处无需 encode
}
```
如果**还需要**将参数拼接到 url 可再加上如下配置
```
editor.customConfig.uploadImgParamsWithUrl = true
```
## 自定义 fileName
上传图片时可自定义`filename`即在使用`formdata.append(name, file)`添加图片文件时自定义第一个参数
```javascript
editor.customConfig.uploadFileName = 'yourFileName'
```
## 自定义 header
上传图片时刻自定义设置 header
```javascript
editor.customConfig.uploadImgHeaders = {
'Accept': 'text/x-json'
}
```
## withCredentials跨域传递 cookie
跨域上传中如果需要传递 cookie 需设置 withCredentials
```javascript
editor.customConfig.withCredentials = true
```
## 自定义 timeout 时间
默认的 timeout 时间是 10 秒钟
```javascript
// timeout 时间改为 3s
editor.customConfig.uploadImgTimeout = 3000
```
## 监听函数
可使用监听函数在上传图片的不同阶段做相应处理
```javascript
editor.customConfig.uploadImgHooks = {
before: function (xhr, editor, files) {
// 图片上传之前触发
// xhr XMLHttpRequst 对象editor 是编辑器对象files 是选择的图片文件
// 如果返回的结果是 {prevent: true, msg: 'xxxx'} 则表示用户放弃上传
// return {
// prevent: true,
// msg: '放弃上传'
// }
},
success: function (xhr, editor, result) {
// 图片上传并返回结果图片插入成功之后触发
// xhr XMLHttpRequst 对象editor 是编辑器对象result 是服务器端返回的结果
},
fail: function (xhr, editor, result) {
// 图片上传并返回结果但图片插入错误时触发
// xhr XMLHttpRequst 对象editor 是编辑器对象result 是服务器端返回的结果
},
error: function (xhr, editor) {
// 图片上传出错时触发
// xhr XMLHttpRequst 对象editor 是编辑器对象
},
timeout: function (xhr, editor) {
// 图片上传超时时触发
// xhr XMLHttpRequst 对象editor 是编辑器对象
},
// 如果服务器端返回的不是 {errno:0, data: [...]} 这种格式可使用该配置
// 但是服务器端返回的必须是一个 JSON 格式字符串否则会报错
customInsert: function (insertImg, result, editor) {
// 图片上传并返回结果自定义插入图片的事件而不是编辑器自动插入图片
// insertImg 是插入图片的函数editor 是编辑器对象result 是服务器端返回的结果
// 举例假如上传图片成功后服务器端返回的是 {url:'....'} 这种格式即可这样插入图片
var url = result.url
insertImg(url)
// result 必须是一个 JSON 格式字符串否则报错
}
}
```
## 自定义提示方法
上传图片的错误提示默认使用`alert`弹出你也可以自定义用户体验更好的提示方式
```javascript
editor.customConfig.customAlert = function (info) {
// info 是需要提示的内容
alert('自定义提示' + info)
}
```
## 自定义上传图片事件
如果想完全自己控制图片上传的过程可以使用如下代码
```javascript
editor.customConfig.customUploadImg = function (files, insert) {
// files input 中选中的文件列表
// insert 是获取图片 url 插入到编辑器的方法
// 上传代码返回结果之后将图片插入到编辑器中
insert(imgUrl)
}
```

View File

@ -1,115 +0,0 @@
# 上传到七牛云存储
完整的 demo 请参见 https://github.com/wangfupeng1988/js-sdk 可下载下来本地运行 demo
> 注意配置了上传七牛云存储之后**无法再使用插入网络图片**
核心代码如下
```js
var E = window.wangEditor
var editor = new E('#div1')
// 允许上传到七牛云存储
editor.customConfig.qiniu = true
editor.create()
// 初始化七牛上传
uploadInit()
// 初始化七牛上传的方法
function uploadInit() {
// 获取相关 DOM 节点的 ID
var btnId = editor.imgMenuId;
var containerId = editor.toolbarElemId;
var textElemId = editor.textElemId;
// 创建上传对象
var uploader = Qiniu.uploader({
runtimes: 'html5,flash,html4', //上传模式,依次退化
browse_button: btnId, //上传选择的点选按钮**必需**
uptoken_url: '/uptoken',
//Ajax请求upToken的Url**强烈建议设置**服务端提供
// uptoken : '<Your upload token>',
//若未指定uptoken_url,则必须指定 uptoken ,uptoken由其他程序生成
// unique_names: true,
// 默认 falsekey为文件名若开启该选项SDK会为每个文件自动生成key文件名
// save_key: true,
// 默认 false若在服务端生成uptoken的上传策略中指定了 `sava_key`则开启SDK在前端将不对key进行任何处理
domain: 'http://7xrjl5.com1.z0.glb.clouddn.com/',
//bucket 域名下载资源时用到**必需**
container: containerId, //上传区域DOM ID默认是browser_button的父元素
max_file_size: '100mb', //最大文件体积限制
flash_swf_url: '../js/plupload/Moxie.swf', //引入flash,相对路径
filters: {
mime_types: [
//只允许上传图片文件 注意extensions中逗号后面不要加空格
{ title: "图片文件", extensions: "jpg,gif,png,bmp" }
]
},
max_retries: 3, //上传失败最大重试次数
dragdrop: true, //开启可拖曳上传
drop_element: textElemId, //拖曳上传区域元素的ID拖曳文件或文件夹后可触发上传
chunk_size: '4mb', //分块上传时每片的体积
auto_start: true, //选择文件后自动上传若关闭需要自己绑定事件触发上传
init: {
'FilesAdded': function(up, files) {
plupload.each(files, function(file) {
// 文件添加进队列后,处理相关的事情
printLog('on FilesAdded');
});
},
'BeforeUpload': function(up, file) {
// 每个文件上传前,处理相关的事情
printLog('on BeforeUpload');
},
'UploadProgress': function(up, file) {
// 显示进度
printLog('进度 ' + file.percent)
},
'FileUploaded': function(up, file, info) {
// 每个文件上传成功后,处理相关的事情
// 其中 info 是文件上传成功后服务端返回的json形式如
// {
// "hash": "Fh8xVqod2MQ1mocfI4S4KpRL6D98",
// "key": "gogopher.jpg"
// }
printLog(info);
// 参考http://developer.qiniu.com/docs/v6/api/overview/up/response/simple-response.html
var domain = up.getOption('domain');
var res = $.parseJSON(info);
var sourceLink = domain + res.key; //获取上传成功后的文件的Url
printLog(sourceLink);
// 插入图片到editor
editor.cmd.do('insertHtml', '<img src="' + sourceLink + '" style="max-width:100%;"/>')
},
'Error': function(up, err, errTip) {
//上传出错时,处理相关的事情
printLog('on Error');
},
'UploadComplete': function() {
//队列文件处理完毕后,处理相关的事情
printLog('on UploadComplete');
}
// Key 函数如果有需要自行配置无特殊需要请注释
//,
// 'Key': function(up, file) {
// // 若想在前端对每个文件的key进行个性化处理可以配置该函数
// // 该配置必须要在 unique_names: false , save_key: false 时才生效
// var key = "";
// // do something with key here
// return key
// }
}
// domain 为七牛空间bucket)对应的域名选择某个空间后可通过"空间设置->基本设置->域名设置"查看获取
// uploader 为一个plupload对象继承了所有plupload的方法参考http://plupload.com/docs
});
}
// 封装 console.log 函数
function printLog(title, info) {
window.console && console.log(title, info);
}
```

View File

@ -1,10 +0,0 @@
# 全屏 & 预览 & 查看源码
## 全屏
虽然 wangEditor 没有内置全屏功能但是你可以通过简单的代码来搞定作者已经做了一个demo来示范通过运行 demo文档一开始就介绍了即可看到该示例页面直接查看页面源代码即可
## 预览 & 查看源码
如果需要预览和查看源码的功能也需要跟全屏功能一样自己定义按钮点击按钮时通过`editor.txt.html()`获取编辑器内容然后自定义实现预览和查看源码功能

View File

@ -1,24 +0,0 @@
# 关于上传附件
**有用户问到编辑器能否有上传附件的功能我的建议是不要把附件做到内容中**
原因很简单如果将附件上传之后再插入到富文本内容中其实就是一个链接的形式如下图
![](http://box.kancloud.cn/2016-02-19_56c718ec6f9bf.png)
而用户在用编辑器编辑文本时操作是非常随意多样的他把这个链接删了你服务器要想实时删除上传的附件文件是难监控到的
还有用户如果要上传很多个附件也是很难管理的还是因为富文本的内容变化多样用户可以随便在什么地方插入附件而且形式和链接一样
-------
反过来我们想一下平时用附件和编辑器最多的产品是什么是邮箱邮箱如何处理附件的大家应该很清楚它把文本内容和附件分开这样附件就可以很轻松明了的进行管理绝对不会和编辑内容的链接产生混淆
![](http://box.kancloud.cn/2016-02-19_56c718ec83f7e.png)
你能看到的所有的邮箱产品几乎都是这样设计的
-------
因此在你提问编辑器能否上传附件这个问题的时候可以想一下能否参照邮箱的实现来设计

View File

@ -1,12 +0,0 @@
# 关于 markdown
**好多使用者问到wangEditor编辑器能否集成markdown答案是富文本编辑器无法和markdown集成到一起**
-----
你可以参考 [简书](http://www.jianshu.com/) 的实现方式简书中编辑器也无法实现富文本和`markdown`的自由切换要么使用富文本编写文章要么使用`markdown`编写文章不能公用
本质上富文本编辑器和`markdown`编辑器是两回事儿

View File

@ -1,23 +0,0 @@
# 预防 XSS 攻击
> 术业有专攻
要想在前端预防 xss 攻击还得依赖于其他工具例如[xss.js](http://jsxss.com/zh/index.html)如果打不开页面就从百度搜一下
代码示例如下
```html
<script src='/xss.js'></script>
<script src='/wangEditor.min.js'></script>
<script>
var E = window.wangEditor
var editor = new E('#div1')
document.getElementById('btn1').addEventListener('click', function () {
var html = editor.txt.html()
var filterHtml = filterXSS(html) // 此处进行 xss 攻击过滤
alert(filterHtml)
}, false)
</script>
```

View File

@ -1,7 +0,0 @@
# 用于 React
如果需要将 wangEditor 用于 React 可参见如下示例
- 下载源码 `git clone git@github.com:wangfupeng1988/wangEditor.git`
- 进入 React 示例目录 `cd wangEditor/example/demo/in-react/`查看`src/App.js`即可
- 也可以运行`npm install && npm start`查看在 React 中的效果`http://localhost:3000/`

View File

@ -1,7 +0,0 @@
# 用于 Vue
如果需要将 wangEditor 用于 Vue 可参见如下示例
- 下载源码 `git clone git@github.com:wangfupeng1988/wangEditor.git`
- 进入 vue 示例目录 `cd wangEditor/example/demo/in-vue/`查看`src/components/Editor.vue`即可
- 也可以运行`npm install && npm run dev`查看在 vue 中的效果`http://localhost:8080/`

View File

@ -1,3 +0,0 @@
# 用于 Angular
感谢 [@fengnovo](https://github.com/fengnovo) 提供了一个 angular2 的兼容示例可供参考 https://github.com/fengnovo/wangEditor/tree/master/example/demo/in-ng2

View File

@ -1,27 +0,0 @@
# 常用 API
## 属性
- 获取编辑器的唯一标识 `editor.id`
- 获取编辑区域 DOM 节点 `editor.$textElem[0]`
- 获取菜单栏 DOM 节点 `editor.$toolbarElem[0]`
- 获取编辑器配置信息 `editor.config`
- 获取编辑区域 DOM 节点 ID `editor.textElemId`
- 获取菜单栏 DOM 节点 ID `editor.toolbarElemId`
- 获取菜单栏中图片菜单的 DOM 节点 ID `editor.imgMenuId`
## 方法
### 选取操作
- 获取选中的文字 `editor.selection.getSelectionText()`
- 获取选取所在的 DOM 节点 `editor.selection.getSelectionContainerElem()[0]`
- 开始节点 `editor.selection.getSelectionStartElem()[0]`
- 结束节点 `editor.selection.getSelectionEndElem()[0]`
- 折叠选取 `editor.selection.collapseRange()`
- 更多可参见[源码中](https://github.com/wangfupeng1988/wangEditor/blob/master/src/js/selection/index.js)定义的方法
### 编辑内容操作
- 插入 HTML `editor.cmd.do('insertHTML', '<p>...</p>')`
- 可通过`editor.cmd.do(name, value)`来执行`document.execCommand(name, false, value)`的操作

View File

@ -1,3 +0,0 @@
同步[../../README.md](../../README.md)的内容
将所有文档跟新到 www.kancloud.cn/wangfupeng/wangeditor3/332599

View File

@ -1 +0,0 @@
wangEditor demo

View File

@ -1,19 +0,0 @@
{
"name": "wangeditor-in-react",
"version": "0.1.0",
"private": true,
"dependencies": {
"react": "^15.5.4",
"react-dom": "^15.5.4",
"wangeditor": ">=3.0.0"
},
"devDependencies": {
"react-scripts": "1.0.7"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

View File

@ -1,40 +0,0 @@
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<meta name="theme-color" content="#000000">
<!--
manifest.json provides metadata used when your web app is added to the
homescreen on Android. See https://developers.google.com/web/fundamentals/engage-and-retain/web-app-manifest/
-->
<link rel="manifest" href="%PUBLIC_URL%/manifest.json">
<link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
<!--
Notice the use of %PUBLIC_URL% in the tags above.
It will be replaced with the URL of the `public` folder during the build.
Only files inside the `public` folder can be referenced from the HTML.
Unlike "/favicon.ico" or "favicon.ico", "%PUBLIC_URL%/favicon.ico" will
work correctly both with client-side routing and a non-root public URL.
Learn how to configure a non-root public URL by running `npm run build`.
-->
<title>React App</title>
</head>
<body>
<noscript>
You need to enable JavaScript to run this app.
</noscript>
<div id="root"></div>
<!--
This HTML file is a template.
If you open it directly in the browser, you will see an empty page.
You can add webfonts, meta tags, or analytics to this file.
The build step will place the bundled scripts into the <body> tag.
To begin the development, run `npm start` or `yarn start`.
To create a production bundle, use `npm run build` or `yarn build`.
-->
</body>
</html>

View File

@ -1,15 +0,0 @@
{
"short_name": "React App",
"name": "Create React App Sample",
"icons": [
{
"src": "favicon.ico",
"sizes": "192x192",
"type": "image/png"
}
],
"start_url": "./index.html",
"display": "standalone",
"theme_color": "#000000",
"background_color": "#ffffff"
}

View File

@ -1,24 +0,0 @@
.App {
text-align: center;
}
.App-logo {
animation: App-logo-spin infinite 20s linear;
height: 80px;
}
.App-header {
background-color: #222;
height: 150px;
padding: 20px;
color: white;
}
.App-intro {
font-size: large;
}
@keyframes App-logo-spin {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}

View File

@ -1,48 +0,0 @@
import React, { Component } from 'react';
import logo from './logo.svg';
import './App.css';
import E from 'wangeditor'
class App extends Component {
constructor(props, context) {
super(props, context);
this.state = {
editorContent: ''
}
}
render() {
return (
<div className="App">
<div className="App-header">
<img src={logo} className="App-logo" alt="logo" />
<h2>Welcome to React</h2>
</div>
<p className="App-intro">
To get started, edit <code>src/App.js</code> and save to reload.
</p>
{/* 将生成编辑器 */}
<div ref="editorElem" style={{textAlign: 'left'}}>
</div>
<button onClick={this.clickHandle.bind(this)}>获取内容</button>
</div>
);
}
componentDidMount() {
const elem = this.refs.editorElem
const editor = new E(elem)
// 使用 onchange 函数监听内容的变化并实时更新到 state
editor.customConfig.onchange = html => {
this.setState({
editorContent: html
})
}
editor.create()
}
clickHandle() {
alert(this.state.editorContent)
}
}
export default App;

View File

@ -1,8 +0,0 @@
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
it('renders without crashing', () => {
const div = document.createElement('div');
ReactDOM.render(<App />, div);
});

View File

@ -1,5 +0,0 @@
body {
margin: 0;
padding: 0;
font-family: sans-serif;
}

View File

@ -1,8 +0,0 @@
import React from 'react';
import ReactDOM from 'react-dom';
import App from './App';
import registerServiceWorker from './registerServiceWorker';
import './index.css';
ReactDOM.render(<App />, document.getElementById('root'));
registerServiceWorker();

View File

@ -1,7 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 841.9 595.3">
<g fill="#61DAFB">
<path d="M666.3 296.5c0-32.5-40.7-63.3-103.1-82.4 14.4-63.6 8-114.2-20.2-130.4-6.5-3.8-14.1-5.6-22.4-5.6v22.3c4.6 0 8.3.9 11.4 2.6 13.6 7.8 19.5 37.5 14.9 75.7-1.1 9.4-2.9 19.3-5.1 29.4-19.6-4.8-41-8.5-63.5-10.9-13.5-18.5-27.5-35.3-41.6-50 32.6-30.3 63.2-46.9 84-46.9V78c-27.5 0-63.5 19.6-99.9 53.6-36.4-33.8-72.4-53.2-99.9-53.2v22.3c20.7 0 51.4 16.5 84 46.6-14 14.7-28 31.4-41.3 49.9-22.6 2.4-44 6.1-63.6 11-2.3-10-4-19.7-5.2-29-4.7-38.2 1.1-67.9 14.6-75.8 3-1.8 6.9-2.6 11.5-2.6V78.5c-8.4 0-16 1.8-22.6 5.6-28.1 16.2-34.4 66.7-19.9 130.1-62.2 19.2-102.7 49.9-102.7 82.3 0 32.5 40.7 63.3 103.1 82.4-14.4 63.6-8 114.2 20.2 130.4 6.5 3.8 14.1 5.6 22.5 5.6 27.5 0 63.5-19.6 99.9-53.6 36.4 33.8 72.4 53.2 99.9 53.2 8.4 0 16-1.8 22.6-5.6 28.1-16.2 34.4-66.7 19.9-130.1 62-19.1 102.5-49.9 102.5-82.3zm-130.2-66.7c-3.7 12.9-8.3 26.2-13.5 39.5-4.1-8-8.4-16-13.1-24-4.6-8-9.5-15.8-14.4-23.4 14.2 2.1 27.9 4.7 41 7.9zm-45.8 106.5c-7.8 13.5-15.8 26.3-24.1 38.2-14.9 1.3-30 2-45.2 2-15.1 0-30.2-.7-45-1.9-8.3-11.9-16.4-24.6-24.2-38-7.6-13.1-14.5-26.4-20.8-39.8 6.2-13.4 13.2-26.8 20.7-39.9 7.8-13.5 15.8-26.3 24.1-38.2 14.9-1.3 30-2 45.2-2 15.1 0 30.2.7 45 1.9 8.3 11.9 16.4 24.6 24.2 38 7.6 13.1 14.5 26.4 20.8 39.8-6.3 13.4-13.2 26.8-20.7 39.9zm32.3-13c5.4 13.4 10 26.8 13.8 39.8-13.1 3.2-26.9 5.9-41.2 8 4.9-7.7 9.8-15.6 14.4-23.7 4.6-8 8.9-16.1 13-24.1zM421.2 430c-9.3-9.6-18.6-20.3-27.8-32 9 .4 18.2.7 27.5.7 9.4 0 18.7-.2 27.8-.7-9 11.7-18.3 22.4-27.5 32zm-74.4-58.9c-14.2-2.1-27.9-4.7-41-7.9 3.7-12.9 8.3-26.2 13.5-39.5 4.1 8 8.4 16 13.1 24 4.7 8 9.5 15.8 14.4 23.4zM420.7 163c9.3 9.6 18.6 20.3 27.8 32-9-.4-18.2-.7-27.5-.7-9.4 0-18.7.2-27.8.7 9-11.7 18.3-22.4 27.5-32zm-74 58.9c-4.9 7.7-9.8 15.6-14.4 23.7-4.6 8-8.9 16-13 24-5.4-13.4-10-26.8-13.8-39.8 13.1-3.1 26.9-5.8 41.2-7.9zm-90.5 125.2c-35.4-15.1-58.3-34.9-58.3-50.6 0-15.7 22.9-35.6 58.3-50.6 8.6-3.7 18-7 27.7-10.1 5.7 19.6 13.2 40 22.5 60.9-9.2 20.8-16.6 41.1-22.2 60.6-9.9-3.1-19.3-6.5-28-10.2zM310 490c-13.6-7.8-19.5-37.5-14.9-75.7 1.1-9.4 2.9-19.3 5.1-29.4 19.6 4.8 41 8.5 63.5 10.9 13.5 18.5 27.5 35.3 41.6 50-32.6 30.3-63.2 46.9-84 46.9-4.5-.1-8.3-1-11.3-2.7zm237.2-76.2c4.7 38.2-1.1 67.9-14.6 75.8-3 1.8-6.9 2.6-11.5 2.6-20.7 0-51.4-16.5-84-46.6 14-14.7 28-31.4 41.3-49.9 22.6-2.4 44-6.1 63.6-11 2.3 10.1 4.1 19.8 5.2 29.1zm38.5-66.7c-8.6 3.7-18 7-27.7 10.1-5.7-19.6-13.2-40-22.5-60.9 9.2-20.8 16.6-41.1 22.2-60.6 9.9 3.1 19.3 6.5 28.1 10.2 35.4 15.1 58.3 34.9 58.3 50.6-.1 15.7-23 35.6-58.4 50.6zM320.8 78.4z"/>
<circle cx="420.9" cy="296.5" r="45.7"/>
<path d="M520.5 78.1z"/>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.6 KiB

View File

@ -1,51 +0,0 @@
// In production, we register a service worker to serve assets from local cache.
// This lets the app load faster on subsequent visits in production, and gives
// it offline capabilities. However, it also means that developers (and users)
// will only see deployed updates on the "N+1" visit to a page, since previously
// cached resources are updated in the background.
// To learn more about the benefits of this model, read https://goo.gl/KwvDNy.
// This link also includes instructions on opting out of this behavior.
export default function register() {
if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {
window.addEventListener('load', () => {
const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;
navigator.serviceWorker
.register(swUrl)
.then(registration => {
registration.onupdatefound = () => {
const installingWorker = registration.installing;
installingWorker.onstatechange = () => {
if (installingWorker.state === 'installed') {
if (navigator.serviceWorker.controller) {
// At this point, the old content will have been purged and
// the fresh content will have been added to the cache.
// It's the perfect time to display a "New content is
// available; please refresh." message in your web app.
console.log('New content is available; please refresh.');
} else {
// At this point, everything has been precached.
// It's the perfect time to display a
// "Content is cached for offline use." message.
console.log('Content is cached for offline use.');
}
}
};
};
})
.catch(error => {
console.error('Error during service worker registration:', error);
});
});
}
}
export function unregister() {
if ('serviceWorker' in navigator) {
navigator.serviceWorker.ready.then(registration => {
registration.unregister();
});
}
}

Some files were not shown because too many files have changed in this diff Show More