require.js配合插件text.js实现最简单的单页应用程序


Posted in Javascript onJuly 12, 2016

写了一个测试代码,用require.js配合它的一个插件text.js实现了最简单的单页应用程序,简单的记录一下,方便以后复习,
git地址:https://github.com/lily1010/requireSPA
下面来看一下目录

require.js配合插件text.js实现最简单的单页应用程序

从上面项目可以看出,我将css单独抽离出去,实现了按需加载,即加载test1.html时会加载test1.css,加载test2.html时会加载test2.css.

一、先来看入口index.html代码 

<!DOCTYPE html>
<html>
 <head>
  <meta charset="utf-8" />
  <title></title>
  <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
  <style type="text/css" class="css-attribute">
   
  </style>
 </head>
 <body>
  <script data-main="js/main" src="js/require.js"></script>
  <div class="page">
   
  </div>
 </body>
</html>

上面很简单,先定义requirejs入口data-main,另外为了按需加载css,我定义了一个类css-attribute. 

二、在main.js配置路径和做逻辑处理 

require.config({
 paths:{
  "jquery":"lib/jquery-1.11.0",
  "text":"lib/text",
  "text1":"../template/test1.html", //这里千万注意路径
  "text2":"../template/test2.html",
  "css1":"../style/test1.css",
  "css2":"../style/test2.css"
 }
})
require(['jquery','text!text1','text!text2','text!css1','text!css2'],function($,template1,template2,css1,css2){
// 进入页面先设置为页面test1.html内容
 $(".css-attribute").html(css1);
 $(".page").html(template1);
 
// 点击skip按钮设置为页面test2.html内容
 $(".skip").click(function(){
  $(".css-attribute").html(css2);
  $(".page").html(template2);
 })
})
 

上面都是最基础的require配置,注意text.js用法就可以了,很简单的

三、来看看2个页面结构以及样式
①test1.html代码如下:

<div class="test1">
<button class="skip">点击我跳到SPA第二页</button>
</div>

②test1.html的css,即test1.css代码如下:

.test1{
 position: absolute;
 top:0;
 bottom:0;
 left: 0;
 right: 0;
 background-color: red;
}
.skip{
 position: absolute;
 top:50%;
 left: 50%;
 -webkit-transform: translate(-50%,-50%);
 transform: translate(-50%,-50%);
}

实现效果如下: 

require.js配合插件text.js实现最简单的单页应用程序

③test2.html代码如下:

<div class="test2">
 <button class="skip2">我是第二页,点击我回第一页</button>
</div>

④test2.html的css,即test2.css代码如下: 

.test2{
 position: absolute;
 top:0;
 bottom:0;
 left: 0;
 right: 0;
 background-color: pink;
}
.skip2{
 position: absolute;
 top:50%;
 left: 50%;
 -webkit-transform: translate(-50%,-50%);
 transform: translate(-50%,-50%);
}
 

 实现效果如下:

require.js配合插件text.js实现最简单的单页应用程序

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jQuery实现的水平和垂直居中的div窗口
Aug 08 Javascript
编程语言JavaScript简介
Oct 16 Javascript
Javascript学习笔记之函数篇(五) : 构造函数
Nov 23 Javascript
JS或jQuery获取ASP.NET服务器控件ID的方法
Jun 08 Javascript
基于jQuery实现的扇形定时器附源码下载
Oct 20 Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
Dec 15 Javascript
JavaScript知识点总结(十六)之Javascript闭包(Closure)代码详解
May 31 Javascript
分享jQuery网页元素拖拽插件
Dec 01 Javascript
Vuex之理解state的用法实例
Apr 19 Javascript
vue.js中过滤器的使用教程
Jun 08 Javascript
基于vue打包后字体和图片资源失效问题的解决方法
Mar 06 Javascript
JS实现在线ps功能详解
Jul 31 Javascript
javascript中Date对象应用之简易日历实现
Jul 12 #Javascript
JS导出PDF插件的方法(支持中文、图片使用路径)
Jul 12 #Javascript
浅谈angularJS中的事件
Jul 12 #Javascript
深入剖析JavaScript面向对象编程
Jul 12 #Javascript
JS及PHP代码编写八大排序算法
Jul 12 #Javascript
微信支付 JS API支付接口详解
Jul 11 #Javascript
判断输入的字符串是否是日期格式的简单方法
Jul 11 #Javascript
You might like
php图片处理:加水印、缩略图的实现(自定义函数:watermark、thumbnail)
2010/12/02 PHP
PHP解密Unicode及Escape加密字符串
2015/05/17 PHP
Yii 2.0中场景的使用教程
2017/06/02 PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
2018/12/07 PHP
php慢查询日志和错误日志使用详解
2021/02/27 PHP
JQuery toggle使用分析
2009/11/16 Javascript
基于jquery的一个简单的脚本验证插件
2010/04/05 Javascript
jQuery select操作控制方法小结
2010/05/26 Javascript
jQuery ul标签下拉菜单演示代码
2010/12/11 Javascript
jquery实现每个数字上都带进度条的幻灯片
2013/02/20 Javascript
原生js实现改变随意改变div属性style的名称和值的结果
2013/09/26 Javascript
在NodeJS中启用ECMAScript 6小结(windos以及Linux)
2014/07/15 NodeJs
node.js中的fs.unlink方法使用说明
2014/12/15 Javascript
简单实现异步编程promise模式
2015/07/31 Javascript
jQuery中iframe的操作(点击按钮新增窗口)
2016/04/20 Javascript
第四篇Bootstrap网格系统偏移列和嵌套列
2016/06/21 Javascript
AngularJS 与百度地图的结合实例
2016/10/20 Javascript
微信分享调用jssdk实例
2017/06/08 Javascript
Vue.js2.0中的变化小结
2017/10/24 Javascript
实例分析JS与Node.js中的事件循环
2017/12/12 Javascript
基于datepicker定义自己的angular时间组件的示例
2018/03/14 Javascript
实例分析vue循环列表动态数据的处理方法
2018/09/28 Javascript
js拖动滑块和点击水波纹效果实例代码
2018/10/16 Javascript
Postman的下载及安装教程详解
2018/10/16 Javascript
vue+elementui通用弹窗的实现(新增+编辑)
2021/01/07 Vue.js
详解微信小程序轨迹回放实现及遇到的坑
2021/02/02 Javascript
Python Deque 模块使用详解
2014/07/04 Python
Python安装pycurl失败的解决方法
2018/10/15 Python
Python操作json的方法实例分析
2018/12/06 Python
用Python读取几十万行文本数据
2018/12/24 Python
Python面向对象总结及类与正则表达式详解
2019/04/18 Python
基于Python制作一副扑克牌过程详解
2020/10/19 Python
加利福尼亚州威尼斯的女性奢侈品设计师服装和概念店:Mona Moore
2018/09/13 全球购物
试用期转正鉴定评语
2014/01/27 职场文书
2014年招生工作总结
2014/11/26 职场文书
2014年银行年终工作总结
2014/12/19 职场文书