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 相关文章推荐
IE8 chrome中table隔行换色解决办法
Jul 09 Javascript
用javascript判断IE版本号简单实用且向后兼容
Sep 11 Javascript
使用jQuery解决IE与FireFox下createElement方法的差异
Nov 14 Javascript
Javascript实现返回上一页面并刷新的小例子
Dec 11 Javascript
页面图片浮动左右滑动效果的简单实现案例
Feb 10 Javascript
JQ实现新浪游戏首页幻灯片
Jul 29 Javascript
Jquery组件easyUi实现表单验证示例
Aug 23 Javascript
vue Element-ui input 远程搜索与修改建议显示模版的示例代码
Oct 19 Javascript
聊聊Vue 中 title 的动态修改问题
Jun 11 Javascript
vue 解决数组赋值无法渲染在页面的问题
Oct 28 Javascript
vuex管理状态仓库使用详解
Jul 29 Javascript
vue data有值,但是页面{{}} 取不到值的解决
Nov 09 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 编写的日历
2006/10/09 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
2016/05/22 PHP
TP5框架使用QueryList采集框架爬小说操作示例
2020/03/26 PHP
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
jquery限制输入字数,并提示剩余字数实现代码
2012/12/24 Javascript
jQuery实现类似滑动门切换效果的层切换
2013/09/23 Javascript
javascript与cookie 的问题详解
2013/11/11 Javascript
Javascript Memoizer浅析
2014/10/16 Javascript
Js实现网页键盘控制翻页的方法
2014/10/30 Javascript
JS+CSS实现简单的二级下拉导航菜单效果
2015/09/21 Javascript
简单了解Backbone.js的Model模型以及View视图的源码
2016/02/14 Javascript
使用jQuery的toggle()方法对HTML标签进行显示、隐藏的方法(示例)
2016/09/01 Javascript
jQuery实现的超链接提示效果示例【附demo源码下载】
2016/09/09 Javascript
JavaScript取得gridview中获取checkbox选中的值
2017/07/24 Javascript
JS获取日期的方法实例【昨天,今天,明天,前n天,后n天的日期】
2017/09/28 Javascript
[jQuery] 事件和动画详解
2019/03/05 jQuery
JS异步处理的进化史深入讲解
2019/08/25 Javascript
Vue 设置axios请求格式为form-data的操作步骤
2019/10/29 Javascript
详解vue中在循环中使用@mouseenter 和 @mouseleave事件闪烁问题解决方法
2020/04/07 Javascript
原生JS实现无缝轮播图片
2020/06/24 Javascript
vue 弹出遮罩层样式实例
2020/07/22 Javascript
使用Python构建Hopfield网络的教程
2015/04/14 Python
python MySQLdb Windows下安装教程及问题解决方法
2015/05/09 Python
python提取页面内url列表的方法
2015/05/25 Python
python动态加载包的方法小结
2016/04/18 Python
Python操作mysql数据库实现增删查改功能的方法
2018/01/15 Python
Python实现将HTML转成PDF的方法分析
2019/05/04 Python
python读取文件指定行内容实例讲解
2020/03/02 Python
一款基于css3的列表toggle特效实例教程
2015/01/04 HTML / CSS
捷克钓鱼用品网上商店:Parys.cz
2018/06/15 全球购物
PHP如何调用MYSQL存储过程
2014/05/30 面试题
金融与证券专业求职信
2014/06/22 职场文书
铅球加油稿100字
2014/09/26 职场文书
大卫科波菲尔读书笔记
2015/06/30 职场文书
学校学期工作总结
2015/08/13 职场文书
详解Spring Security中的HttpBasic登录验证模式
2022/03/17 Java/Android