js课程 6-15 js简单弹力球如何实现
js课程 6-15 js简单弹力球如何实现
一、总结
一句话总结:a、通过document的documentElement属性获取可是区域的高; b、通过增值变为负的实现到底部后反弹
1、document的body属性和documentElement属性的区别是什么?
比如body中只有一个img的时候
那么body的区域就是只有img的这么大
documentElement的范围就是整个document文档
2、如何实现弹力球到底部之后反弹的问题?
让增值变为负的即可
41 setInterval(function(){
42 ys+=yv;
43
44 if(ys>=diffHeight){
45 ys=diffHeight;
46 yv=-yv;
47 }
48
49 if(ys<=0){
50 yv=-yv;
51 }
52 imgobj.style.top=ys+'px';
53 },10);
3、js中如何设置元素的样式?
元素.style.样式名,比如imgobj.style.top
52 imgobj.style.top=ys+'px';
4、js中如何获取页面的宽高?
通过document的documentElement属性
1.有效的高 屏幕可视的高
document.documentElement.clientHeight
2.屏幕的总高度 屏幕的总高度
document.documentElement.scrollHeight
3.滚动的高 滚动的高度
document.documentElement.scrollTop
34 screenHeight=document.documentElement.clientHeight;
35 imgHeight=128;
36 diffHeight=screenHeight-imgHeight;
5、div中放img,比如img是128*128,div也是128*128,但是img还是把div多顶了4px,div变成了128*132,如何解决?
出现的原因是因为图片对齐的问题,虽然这里没有文字,其实也就是块标签中的行标签对齐的问题
a、img设置display为block
b、div设置overflow为hidden
6、jquery和js中事件的区别是什么?
js中加了on,比如onkeydown,而jquery中就是keydown
二、js简单弹力球如何实现
1、相关知识
获取3个高度:
1.有效的高 屏幕可视的高
document.documentElement.clientHeight
2.屏幕的总高度 屏幕的总高度
document.documentElement.scrollHeight
3.滚动的高 滚动的高度
document.documentElement.scrollTop
2、代码
<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>index</title>
<style>
*{
font-family: 微软雅黑;
margin:0px;
padding:0px;
} #imgid{
width:128px;
height:128px;
position: absolute;
top:0px;
left:0px;
} #imgid img{
display: block;
} </style>
</head>
<body>
<div id='imgid'>
<img src="fb.png">
</div>
</body>
<script>
imgobj=document.getElementById('imgid');
screenHeight=document.documentElement.clientHeight;
imgHeight=128;
diffHeight=screenHeight-imgHeight; ys=0;
yv=10; setInterval(function(){
ys+=yv; if(ys>=diffHeight){
ys=diffHeight;
yv=-yv;
} if(ys<=0){
yv=-yv;
}
imgobj.style.top=ys+'px';
},10);
</script>
</html>
js课程 6-15 js简单弹力球如何实现的更多相关文章
- js课程 1-5 js如何测试变量的数据类型
js课程 1-5 js如何测试变量的数据类型 一.总结 一句话总结:用typeof()方法. 1.js如何判断变量的数据类型? 用typeof()方法. 13 v=10; 14 15 if(typeo ...
- js版弹力球实例
<!DOCTYPE html><html> <head> <meta charset="UTF-8"> <title>弹 ...
- JS实现弹性势能效果(弹力球效果[实现插件封装])
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8&quo ...
- js课程 4-11 表格如何实现隔行换色
js课程 4-11 表格如何实现隔行换色 一.总结 一句话总结:表格奇数行和偶数行判断,赋予不同的样式. 1.表格如何隔行换色? 表格奇数行和偶数行判断,赋予不同的样式. 21 <script& ...
- js课程 1-4 js变量的作用域是怎样的
js课程 1-4 js变量的作用域是怎样的 一.总结 一句话总结:只有在函数内部前面带var的变量为局部变量,局部变量只能在函数体内使用. 1.什么情况下会出现NaN类型的错误,举一例? Num ...
- js课程 1-3 Javascript变量类型详解
js课程 1-3 Javascript变量类型详解 一.总结 一句话总结:js对象点(属性方法),json对象冒号(属性方法).属性和方法区别只有一个括号. 1.json对象中的函数的使用? 函数名 ...
- js课程 1-2 js概念
js课程 1-2 js概念 一.总结 一句话总结:js标签元素也是js对象,有属性和方法,方法就是事件,属性就是标签属性,可以直接调用. 1.js中如何获取标签对象? getElement获取的是标 ...
- node.js学习(三)简单的node程序&&模块简单使用&&commonJS规范&&深入理解模块原理
一.一个简单的node程序 1.新建一个txt文件 2.修改后缀 修改之后会弹出这个,点击"是" 3.运行test.js 源文件 使用node.js运行之后的. 如果该路径下没有该 ...
- Js完美验证15/18身份证,Js验证身份证,支持15/18位
Js完美验证15/18身份证,Js验证身份证,支持15/18位 >>>>>>>>>>>>>>>>> ...
随机推荐
- vue --- 脚手架初始化项目中配置文件webpack.base.conf.js代码含义
'use strict' //引入node path 中间件 可以获取到 path 路径的一些信息 const path = require('path') //引入utils工具模块 utils主要 ...
- OPENCV(6) —— 角点检测
图像特征的类型通常指边界.角点(兴趣点).斑点(兴趣区域).角点就是图像的一个局部特征,应用广泛.harris角点检测是一种直接基于灰度图像的角点提取算法,稳定性高,尤其对L型角点检测精度高,但由于采 ...
- 在Windows下如何创建虚拟环境(默认情况下)
很多小伙伴平时在使用Python的时候,有的项目需要使用Python2来进行开发,有的项目则是需要Python3来进行开发.当不清楚怎么分开环境的时候,此时两个环境开始打架,彼此傻傻分不清楚.虚拟环境 ...
- C/C++(C++拷贝构造器,赋值运算符重载)
拷贝构造器 由己存在的对象,创建新对象.也就是说新对象,不由构造器来构造,而是由拷贝构造器来完成.拷贝构造器的格式是固定的. class 类名 { 类名(const 类名 & another) ...
- 学习参考《TensorFlow深度学习》高清中文版PDF+英文版PDF+源代码
我们知道,TensorFlow是比较流行的深度学习框架,除了看手册文档外,推荐大家看看<Tensorflow深度学习>,共分5方面内容:基础知识.关键模块.算法模型.内核揭秘.生态发展.前 ...
- Swift学习笔记(15)--下标脚本(Subscripts)
下标脚本可以定义在类(Class).结构体(structure)和枚举(enumeration)这些目标中,使用中类似数组或者字典的用法 1.定义 定义下标脚本使用subscript关键字,语法: s ...
- 【Henu ACM Round#18 E】Anya and Cubes
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 每个数字有3种选择. 1.选中它. 2.选中它且加阶乘符号 3.不选中它(即计算和的时候不考虑它) 如果我们直接暴力写的话复杂度是\ ...
- 【VC编程技巧】窗口☞3.4利用bitmap改变对话框的背景。
效果图: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvY2hlbl9qaW50/font/5a6L5L2T/fontsize/400/fill/I0JBQ ...
- jq ---- 实现浏览器全屏
// 点击进入全屏 方法. var fullscreen=function(){ elem=document.body; if(elem.webkitRequestFullScreen){ elem. ...
- 7.cocos精灵创建和绘制
创建Layer层的类 T2LayerSprite.h #pragma once #include "cocos2d.h" USING_NS_CC; class T2LayerSpr ...