总结目前为止JavaScript所学的知识点以及问题

目前为止JavaScript所学的知识点以及问题

第一章:

1.1 JavaScript的应用

1)  通过学习鼠标的事件:onclick(点击事件)、onmouseover(鼠标放上)、onmouseout(鼠标移走)来操作动画特效。

2)   通过学习JS语法控制页面元素CSS样式。

  1. JavaScript 能够直接写入 HTML 输出流中。
  2. JavaScript 能够对事件作出反应。
  3. JavaScript 能改变 HTML 元素的内容、样式。

1.2 JavaScript的特点

1)       了解关于JavaScript的特点。比如

  1. 解释性:C语言为编译性。
  2. 基于对象:什么是对象?
  3. 事件驱动:onclick,onmouseover, onmouseout等。
  4. 跨平台性:只跟浏览器有关。
  5. 安全性:不允许访问本地硬盘,不能对网络文档进行修改和删除。

1.3 初探JavaScript

1)   了解编写JS流程。

  1. 布局:HTML和CSS。
  2. 样式:修改页面元素的样式,div1的display样式。
  3. 事件:确定用户做什么操作。
  4. 编写JS:在事件中,用JS来修改页面元素的样式
  5. 原理:响应用户的操作,对页面元素进行样式修改

实列1:

分析:通过定义一个函数myFunction去改变HTML元素的内容。

问题1:为什么x=document.getElementById(”demo”)中x的不用var 定义仍然能使用?解决:先定义更好~

实列2:

问题2:为什么script写进body里仍然能生效?解决:写哪里都行,最好写上面

第二章:

2.1 JavaScript的组成

由ECMAScript、BOM、DOM三部分组成

2.2变量类型、变量类型显式、隐式转换

运用闭包、变量作用域、变量类型、变量类型显式、隐式转换做例子

2.3运算符 %

实列1:

彩条旗(运算符 求模的应用)

分析:利用window.onload=function()页面加载出一个彩条旗,

利用循环,js控制元素颜色达到奇数列和偶数列不用颜色的效果。

2.4 Switchbreakcontinuejason、真假

分析:Switch、break、continue与java中的运用一样,可以联想。

Jason是对象的意思; 通过循环,使jason这个数组达到单个连续输出

实列2:

2.5可变参、提取非行间样式、数组基础

分析:

实列3:

  1.可变参arguments

通过定义一个函数sum,传入数字1,2,3。利用arguments数组达到相加的结果 ,return出来的结果等于1+2+3=6

实列4:

  A.参数个数不同,函数执行功能不同

分析:定义一个gsstyle函数,在window..里的窗口运用gsstyle()传入2个参数 “backgroundColor”“#f00”,function gsstyle()具体操作(相当于backgroundColor.style=“#f00”)使body的div蓝色变成红色。

  B.提取非行间样式。getComputedStyle(chrome+ff)很多兼容性问题可以解决。

实列5:

如下图,

CurrentStyle在IE里它是对象,谷歌是underfinder,所以需要getComputedStyle来处理兼容性问题。

  1. 数组修改

定义一个数组 var arr=【1,2,3,4,5】

arr.push(9);在数组最后加个数字9

arr.unshift(0);在最前加个数字

arr.concat(brr);实现2个数组的连接

arr.pop();删除并返回数组的第一个元素

arr.sort();对数组元素进行排序

如:

arr.splice();删除元素,并向数组添加新的元素

toSourse把数组转化为字符串,并返回结果,

更多请自行百度哦。

第三章:

主要运用:定时器,动态定时器,qq

1)   对于定时器的操作,定时器有2个,

  1. setInterval(函数名,时间),它具有间断性,间断的时间由用户输入的时间决定。(常用)

如:setInterval(show,1000);//1s

  2.setTimeout(函数名,时间),它具有延迟性,

如可先定义var timer=setTimeout();这样使用方便

  3.清除定时器:clearIntervar(定时器名);

实列1:

分析:

通过定义2个按钮input 属性是button;控制着2个按钮操作每隔3秒弹出提示框的操作。

点击btn1时:oBtn1.onclick=function()

{oTimer=setInterval(function(){alert("a");},3000);

};//单击“start”按钮,每隔3秒弹出提示框

点击btn2时:oBtn2.onclick=function()  {

clearInterval(oTimer);

}//单击“stop”按钮,定时器关闭,不再弹出提示框

2)   动态定时器

实列2:

效果:

分析:

  1. Body中导入6个数字
  2. function toDbl(num){

    if (num<10)return "0"+num;

     else return ""+num;}

先做这个东西,为后面出现的时间数组做铺垫,如果是个位数就在0在前面,“010203”的效果。

  3.

    a)   定义var aImage=document.getElementsByTagName("img");控制所有的图片

    b)   定义一个函数tick;构建出image标签的src属性的取值,从而确定出时分秒的每一位应该使用哪一张图片

    c)   var oDate=new Date();Date中国标准时间,使用前先new一下~

    d)   var str=toDbl(oDate.getHours())+toDbl(oDate.getMinutes())+toDbl(oDate.getSeconds());获取时分秒

    e)   for(var i=0;i<aImage.length;i++)  {  aImage[i].src="image/"+str.charAt(i)+".jpg";} 为了兼容,不试用str[i]. ,通过时间改变图片

问题1:

定义var aImage=document.getElementsByTagName("img");控制所有的图片时,该html就只有6个图片

循环中i<aImage.length,就是i<6; str.charAt(i)是通过时间来获取图片,最大只有5,如何获取6以上的图片呢????

解决:

此问题在于没有正确理解str.charAt(i)的意思,

charAt(i)获取第几个数字,如“012759”,当i=0是,获取第一个数字的数值,通过str

f)   setInterval(tick, 1000);设置定时器,每隔一秒调用tick函数构建图片的src属性值

g)   tick();为了处理页面加载的时6位时分秒全显示0的问题,先调用

3)   qq

实列3:

分析:定义了2个div,

当鼠标放上div1的时候div2出来

当鼠标从div1移走的时候,div2延时消失

当鼠标放上div2的时候,清除计时器,div2不消失

当鼠标移走div2的时候,div2延时消失

第四章:

主要内容 offsetleft,滚动效果,简易日历,选项卡

1)   offsetleft:所有的左边距

分析:this 代表 当前操作的对象

运用:setInterval(function(){

var oDiv=document.getElementById("div1");

oDiv.style.left=oDiv.offsetLeft+10+"px";},30);

通过改变它的左边距+定时器可以实现滚动效果

2)   简易日历

实列1:

效果:

  1. 通过body搭建出ul和12和li 定义一个总的div装起所有,下面的文字一个用h2,一个用p
  2. 在css里设计样式

a)   要用到浮动使li排列

b)   若下面的英文用p而不是直接用li装,需要用到定义css p{ cursor:pointer} 意思是设定鼠标伸出时p的样式和上面h的文字样式一样

c)   若英文同p装,不要写p的定位,否则英文不出来

  3.在js里

a)   定义一个   var arr=[         ‘一月活动安排1‘*12,..  ]装起所有的文字,让他边变色

b)   oTxt.innerHTML=‘<h2>‘+ (this.index+1)+‘月活动</h2><p>‘+arr[this.index]+‘</p>‘; 处理div里内容的显示;

innerHTML是一个字符串,用来设置或获取位于对象起始和接受的标签的html;

c)   this.className=‘active‘;  将当前的li的CSS样式处理为活动状态,利用循环,点击事件12个月份,初始化,活动等步骤实现简历日历。

原文地址:https://www.cnblogs.com/tegong007/p/8797904.html

时间: 2024-10-01 23:07:26

总结目前为止JavaScript所学的知识点以及问题的相关文章

Javascript思学笔记(一)

理论知识点一 一个完整的javascript实现应该由下列三个不同的部分组成1.核心(ECMAScript)2.文档对象模型(DOM)3.浏览器对象模型(BOM) 二.HTML4.01的Script有6个属性,了解一下1.async:表示应该立即下载脚本,但不应妨碍页面中的其他操作,比较下载其他资源或等待加载其他脚本.只对外部脚本文件有效2.charset:代码的字符集.大多数浏览器忽略它的值 ,很少有人用3.defer:表示脚本可以延迟到文档完全被解析和显示之后再执行.4.language:已

javascript面向对象系列5——知识点(原型和原型链)

基本概念 [原型链]每个构造函数都有一个对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型对象的内部指针.那么,如果原型对象等于另一个原型的实例,此时的原型对象将包含一个指向另一个原型的指针,相应地,另一个原型中也包含着一个指向另一个构造函数的指针.如果另一个原型又是另一个原型的实例,那么上述关系依然成立.如此层层递进,就构成了实例与原型的链条. [原型对象]这个对象包含可以由特定类型的所有实例共享的属性和方法.所有引用类型默认都继承了Object,而这个继承也是通过原型链实现

私人定制javascript中数组小知识点(Only For Me)

先上笑话,1.刚看到一个游泳的,想起公司组织去三亚旅游,老板跳海里,各种挣扎,捞上来老板第一句话:我记得我会游泳的啊. 2.媳妇说:老公对不起,我把你新买的自行车撞散架了! 老公:没事宝贝,你若安好,便是晴天! 媳妇说:老公你太有诗意了. 老公:滚犊子,安不好我整死你! 数组的概念 javascript数组是值得有序集合,不过它实属一个javascript对象的特殊形式,这是一个很重点的定性. 创建数组 1.var a=new Array();//等同于[] 2.var a=new Array(

javascript系列之核心知识点(一)

JavaScript. The core. 1.对象 2.原型链 3.构造函数 4.执行上下文堆栈 5.执行上下文 6.变量对象 7.活动对象 8.作用域链 9.闭包 10.this值 11.总结 这篇文章是"ECMA-262-3 in detail"系列的一个摘要和总结.每一部分包含了对应章节的连接引用,所以你可以仔细去阅读得到一个更深刻的理解.适合的读者:资深程序员,专家.我们从探讨对象的概念开始,这也是ECMAScript的奠基石. 对象 ECMAScript,一个高度抽象的面向

私人定制javascript中对象小知识点(Only For Me)

废话不多讲,先上笑话,然后再,.看懂这个的说明你的节操已经不再了. 晚饭后去理发店理发...割了吧...老板问我怎么剪,我悠悠的来一句往帅了剪...高潮往往令人想不到....旁边一在焗油烫头发的大妈说到 别这样为难老板,人家赚点钱不容易...首先如果你是高手那么请出门右转,如果你是菜鸟那么恭喜你,go on吧 全局对象在javascript程序中任何位置,都可以拈来就用的这种东西,是全局对象的属性.那么属性所在的对象也就是全局对象了.当javascript解释器启动时(或者任何Web浏览器加载新

Javascript的一些小知识点

小弟五一回家去了,本想好好的享受下五一假期,谁知悲剧的人生不需要解释.好不容易过五关斩十将,跨千山趟万水,回到家里.吃着老妈做的好菜,第二天就莫名其妙的急性肠炎,这肚子闹腾的.NND,气死哥了,早知道就不回家了.好了,废话不多说,进入主题. ================ 关于clientHeight.offsetHeight.scrollHeight window.screen.availWidth 返回当前屏幕宽度(空白空间) window.screen.availHeight 返回当前屏

私人定制javascript中函数小知识点

函数的定义 首先在javascript中,函数就是对象,程序可以随意操控它们.比如,可以给它们设置属性,甚至调用它们的方法.函数使用function关键字来定义.它既可以用在函数定义表达式,也可以用在函数声明语句中.函数声明function后面必须要更上函数名称也就是所谓的函数名称标识符.如果是函数表达式函数名称标识符可有可无.这段重点是函数是对象,所以函数表现出来的种种行为你想想成对象,那么很多疑惑可能就恍如昨日初见. 函数调用 4种方式来调用javascript函数: 1.作为函数 就是函数

JavaScript巧学巧用

前言 由于工作和生活上的一些变化,最近写文章的频率有点下降了,实在不好意思,不过相信不久就会慢慢恢复过来,感谢大家一直以来的关注和支持. 本文主要给大家分享一下在编写JavaScript代码的时候存在的一些方法和技巧,虽然有时候条条大路都通向罗马,但是也许总会有那么一条最短的路径可走.希望通过以下几点JavaScript技巧让大家的代码"化繁为简,化简为精". 巧学巧用 1. new Set() 可能有人知道ES6中提供了新的数据结构 Set,但是能够灵活运用的人或许不多.利用Set数

读《javascript语法精粹》知识点总结

昨天泡了大半天的读书馆,一口气看完了<javascript语法精粹>这本书,总体来说这本书还是写的不错,难怪那么多的推荐.<javascript语法精粹>主要是归纳与总结了javascript中的重点知识,下面我把我看玩后觉得比较重要的知识点分享出来. <javascript语言精粹>重要知识点 一.比较有意思的递归函数 1.一个有意思的递归,形成数据结构,0,1,1,2,3,5,8,13--(其实在我的<javascript常用知识点集>中也写过这个递归,