require简单实现单页应用程序(SPA)


Posted in Javascript onJuly 12, 2016

写了一个测试代码,用require.js配合它的一个插件text.js实现了最简单的单页应用程序,简单的记录一下,方便以后复习,

git地址:https://github.com/lily1010/requireSPA

下面来看一下目录

require简单实现单页应用程序(SPA)

从上面项目可以看出,我将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简单实现单页应用程序(SPA)

③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简单实现单页应用程序(SPA)

以上这篇require简单实现单页应用程序(SPA)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
自己的js工具 Cookie 封装
Aug 21 Javascript
js出生日期 年月日级联菜单示例代码
Jan 10 Javascript
JavaScript新窗口与子窗口传值详解
Feb 11 Javascript
jQuery制作效果超棒的手风琴折叠菜单
Apr 03 Javascript
JavaScript实现鼠标滑过图片变换效果的方法
Apr 16 Javascript
js比较日期大小的方法
May 12 Javascript
PhantomJS快速入门教程(服务器端的 JavaScript API 的 WebKit)
Aug 06 Javascript
深入理解JavaScript中的浮点数
May 18 Javascript
react中fetch之cors跨域请求的实现方法
Mar 14 Javascript
微信小程序首页的分类功能和搜索功能的实现思路及代码详解
Sep 11 Javascript
vue 实现路由跳转时更改页面title
Nov 05 Javascript
简单了解Vue computed属性及watch区别
Jul 10 Javascript
require.js配合插件text.js实现最简单的单页应用程序
Jul 12 #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
You might like
PHP伪静态页面函数附使用方法
2008/06/20 PHP
php的无刷新操作实现方法分析
2020/02/28 PHP
对采用动态原型方式无法展示继承机制得思考
2009/12/04 Javascript
jQuery.fn和jQuery.prototype区别介绍
2013/10/05 Javascript
Vue.js双向绑定实现原理详解
2016/12/22 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
jquery+ajax实现省市区三级联动效果简单示例
2017/01/04 Javascript
jQuery弹出层插件popShow用法示例
2017/01/23 Javascript
VsCode插件整理(小结)
2017/09/14 Javascript
vue学习笔记之v-if和v-show的区别
2017/09/20 Javascript
vue2.0 根据状态值进行样式的改变展示方法
2018/03/13 Javascript
解析vue路由异步组件和懒加载案例
2018/06/08 Javascript
layerUI下的绑定事件实例代码
2018/08/17 Javascript
Node.js中package.json中库的版本号(~和^)
2019/04/02 Javascript
解决layui调用自定义方法提示未定义的问题
2019/09/14 Javascript
element-ui中dialog弹窗关闭按钮失效的解决
2020/09/22 Javascript
实例讲解Python中的私有属性
2014/08/21 Python
Python入门之三角函数tan()函数实例详解
2017/11/08 Python
python 实现分页显示从es中获取的数据方法
2018/12/26 Python
Python字符串的一些操作方法总结
2019/06/10 Python
Python学习笔记之集合的概念和简单使用示例
2019/08/22 Python
你可能不知道的Python 技巧小结
2020/01/29 Python
Python基于DB-API操作MySQL数据库过程解析
2020/04/23 Python
凯特王妃父母建立的派对用品网站:Party Pieces
2017/05/28 全球购物
某公司部分笔试题
2013/11/05 面试题
教师绩效考核方案
2014/01/21 职场文书
电工工作职责范本
2014/02/22 职场文书
《曹刿论战》教学反思
2014/03/02 职场文书
保洁公司服务承诺书
2014/05/28 职场文书
工商局所长四风自我剖析及整改措施
2014/10/26 职场文书
员工辞职信范文
2015/03/02 职场文书
晚会开场白和结束语
2015/05/29 职场文书
城南旧事读书笔记
2015/06/29 职场文书
公司安全管理制度范本
2015/08/05 职场文书
英文诗歌翻译方法(赏析)
2019/08/16 职场文书
Windows10安装Apache2.4的方法步骤
2022/06/25 Servers