web组件化开发第一天
技术选型
html5 css3 jq
应用的插件
一、建一个测试页面,测试静态的功能
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8"/>
<meta name="viewport" content="width=device-width, minimum-scale=1, maximum-scale=1"> <title>慕课网2015课程学习情况</title>
<style>
body{
margin:0;
padding:0;
}
.component{
width: 50%;
height:50px;
margin-bottom:20px;
background-color: red;
display: none;
}
</style> <body>
<!-- 用于验证 fullpage.js 切换页面,以及内容组织结构可用,组件能够进行动画 --> <div id="h5">
<!-- 给每个需要翻页的页面添加section类 给定不同的ID -->
<div class="page section" id="page-1">
<div class="component">logo</div>
<div class="component slogan">slogan</div>
</div>
<div class="page section" id="page-2">
<div class="component">logo</div>
<div class="component slogan">slogan</div>
</div>
<div class="page section" id="page-3">
<div class="component">logo</div>
<div class="component slogan">slogan</div>
</div>
</div> </body> </html>
二、首先载入fullpage.js
<script type="text/javascript" src="../js/lib/jquery.js"></script>
<script type="text/javascript" src="../js/lib/jquery-ui.min.js"></script>
<script type="text/javascript" src="../js/lib/jquery.fullPage.js"></script>
三、测试功能是否完好。
$(function (){
$('#h5').fullpage({
//传入背景色 sectionsColor 后面接对象。
'sectionsColor': ['#254875', '#00ff00', '#245874'],
/*
* 传入回掉函数 onLeave afterLoad
* afterLoad
* 滚动到某一屏后的回调函数,接收 anchorLink 和 index 两个参数,
* anchorLink 是锚链接的名称,index 是序号,从1开始计算
* onLeave
* 滚动前的回调函数,接收 index、nextIndex 和 direction 3个参数:
* index 是离开的“页面”的序号,从1开始计算;
* nextIndex 是滚动到的“页面”的序号,从1开始计算;
* direction 判断往上滚动还是往下滚动,值是 up 或 down。
* */
onLeave: function (index, nextIndex, direction) {
//让page执行onLeave事件。
$('#h5').find('.page').eq(index-1).trigger('onLeave');
},
afterLoad: function (anchorLink, index) {
//让page执行onLoad事件。
$('#h5').find('.page').eq(index-1).trigger('onLoad');
},
});
//给page页面绑定onLeave事件。
$('.page').on('onLeave',function () {
console.log($(this).attr('id'),'====>','onleave');
//让component执行onLeave事件。
$(this).find('.component').trigger('onLeave');
})
//给page页面绑定onLoad事件。
$('.page').on('onLoad',function () {
console.log($(this).attr('id'),'====>','onLoad');
//让component执行onLoad事件。
$(this).find('.component').trigger('onLoad');
})
//给component页面绑定onLoad事件。
$('.component').on('onLoad',function () {
$(this).fadeIn();
//防止事件冒泡。循环传播。
return false;
})
//给component页面绑定onLeave事件。
$('.component').on('onLeave',function () {
$(this).fadeOut();
return false;
})
});
web组件化开发第一天的更多相关文章
- 从徐飞的文章《Web应用的组件化开发(一)中窥视web应用开发的历史
Web应用的组件化开发(一) 原文来自 徐飞 基本思路 1. 为什么要做组件化? 无论前端也好,后端也好,都是整个软件体系的一部分.软件产品也是产品,它的研发过程也必然是有其目的.绝大多数软件产品是追 ...
- vue.js组件化开发实践
前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了下面的内容.借油开车. 组件化 需求一到,接就是怎么实现,技术选型自然 ...
- Vue 入门之组件化开发
Vue 入门之组件化开发 组件其实就是一个拥有样式.动画.js 逻辑.HTML 结构的综合块.前端组件化确实让大的前端团队更高效的开发前端项目.而作为前端比较流行的框架之一,Vue 的组件和也做的非常 ...
- vue组件化开发实践
前言 公司目前制作一个H5活动,特别是有一定统一结构的活动,都要码一个重复的轮子.后来接到一个基于模板的活动设计系统的需求,便有了一下的内容.首先会对使用Vue进行开发的一些前期需要的技术储备进行简单 ...
- 漫谈Nuclear Web组件化入门篇
目前来看,团队内部前端项目已全面实施组件化开发.组件化的好处太多,如:按需加载.可复用.易维护.可扩展.少挖坑.不改组件代码直接切成服务器端渲染(如Nuclear组件化可以做到,大家叫同构)... 怎 ...
- 前端笔记之JavaScript面向对象(四)组件化开发&轮播图|俄罗斯方块实战
一.组件化开发 1.1组件化概述 页面特效的制作,特别需要HTML.CSS有固定的布局,所以说现在越来越流行组件开发的模式,就是用JS写一个类,当你实例化这个类的时候,页面上的效果布局也能自动完成. ...
- vue(9)—— 组件化开发 - webpack(3)
前面两个终于把webpack相关配置解析完了.现在终于进入vue的开发了 vue组件化开发预热 前期准备 创建如下项目: app.js: footer.js: main.js: webpack.con ...
- AppBoxFuture(六): 前端组件化开发
前面几篇都是在介绍结构化与非结构化的数据存储,本篇换换口味介绍一下框架是如何实现前端组件化开发的.首先得感谢Vue.ElementUI等优秀的前端开源项目,这些项目帮助作者快速实现了框架的两个前端 ...
- atitit. web组件化原理与设计
atitit. web组件化原理与设计 1. Web Components提供了一种组件化的推荐方式,具体来说,就是:1 2. 组件化的本质目的并不一定是要为了可复用,而是提升可维护性. 不具有复用 ...
随机推荐
- Visual Studio Code打不开
1.win+R 2.输入cmd 3.输入netsh winsock reset然后就可以打开了,如果依然打不开就重启电脑试试
- 《macOS 使用手册》之远程控制
https://support.apple.com/zh-cn/guide/mac-help/mchlp1066/mac 选择版本: macOS Catalina 10.15 macOS Mojave ...
- GitBook的账号注册和安装使用(一)
1.GitBook账号注册 GitBook原注册地址 https://legacy.gitbook.com/join 改为: https://www.gitbook.com/ (1)注册账号:htt ...
- java web编写四则运算
首先先画出一个表 <%@ page language="java" contentType="text/html; charset=UTF-8" page ...
- Kettle — 使用手册
https://blog.csdn.net/u013468915/article/details/82629260 kettle 教程(一):简介及入门 https://blog.csdn.net/q ...
- MySQL - Schema和Database的区别
问题来源 在pycharm发现Create new schema的效果和新建数据库一样,所以产生这个问题 参考 https://stackoverflow.com/questions/11618277 ...
- Plastic Sprayers Manufacturer - The Basic Components Of A Spray Bottle
From cleaning to personal beauty, many people use spray bottles every day, but few people know how t ...
- opencv python:模糊操作
均值模糊 中值模糊 自定义模糊 模糊操作的基本原理 基于离散卷积 定义好每个卷积核 不同卷积核得到不同的卷积效果 模糊是卷积的一种表象 blur cv2.blur(image, (1, 3)) 第二个 ...
- PyQt5信号与槽详解
1.信号与槽函数基础'''信号与槽函数基础,信号是一个事件,发射信号之后槽函数就会执行'''from PyQt5.QtWidgets import *import sys class signal(Q ...
- java代码向kafka集群发送消息报org.apache.kafka.common.errors.TimeoutException: Batch Expired
由于项目是springboot项目,在application.properties加入 logging.level.root=debug debug日志报错信息为kafka集群ip别名访问失败 在wi ...