javascript的理解及经典案例分析


Posted in Javascript onMay 20, 2016

js的简介:

JavaScript是一种能让你的网页更加生动活泼的程式语言,也是目前网页中设计中最容易学又最方便的语言。

你可以利用JavaScript轻易的做出亲切的欢迎讯息、漂亮的数字钟、有广告效果的跑马灯及简易的选举,还可以显示浏览器停留的时间。让这些特殊效果提高网页的可观性。

javascript现在可以再网页上做很多很多事情,网页特效,操作dom,html5游戏(基于html5和JavaScript的结合),动画等等特效,还可以实现拉去后台数据(通过ajax),不仅可以做前台还可以做后台,

比如node.js等等,再比如一些桌面引擎node-webkit可以将JavaScript渲染成桌面应用,在比如unity3d可以使用JavaScript写游戏(unity3d使用的JavaScript的语法,特性等等)

JavaScript语言的特点:

1).JavaScript主要用来向HTML页面中添加交互行为。

2).JavaScript是一种脚本语言,语法和Java相似。

3).JavaScript一般用来编写客户端的脚本。

4).JavaScript是一种解释型语言,边执行边解释。

JavaScript知识点解释:

1、运算符

运算符就是完成操作的一系列符号,它有七类: 赋值运算符、算术运算符、比较运算符、逻辑运算符、条件运算、位操作运算符和字符串运算符。

2、表达式

运算符和操作数的组合称为表达式,通常分为四类:赋值表达式、算术表达式、布尔表达式和字符串表达式。

3、语句

Javascript程序是由若干语句组成的,语句是编写程序的指令。Javascript提供了完整的基本编程语句,它们是: if~else,赋值语句、switch选择语句、while循环语句、for循环语句、do while循环语句、break循环中止语句和continue循环中断语句。

注意:在判断的时候,只有这几种结果为false:即

如果逻辑对象无初始值或者其值为 0、-0、null、""、false、undefined 或者 NaN,那么对象的值为 false。否则,其值为 true(即使当自变量为字符串 "false" 时)!

4、函数

函数是命名的语句段,这个语句段可以被当作一个整体来引用不着和执行。使用函数要注意以下几点:

1)函数由关键字function定义;

2)函数必须先定义后使用,否则将出错;

3)函数名是调用函数时引用的名称,它对大小写是敏感的,调用函数时不可写错函数名;

4)参数表示传递给函数使用或操作的值,它可以是常量,也可以是变量;

5)return语句用于返回表达式的值,也可以没有。

5、对象

Javascript的一个重要功能就是基于对象的功能,通过基于对象的程序设计,可以用更直观、模块化和可重复使用的方式进行程序开发。 一组包含数据的属性和对属性中包含数据进行操作的方法,称为对象。比如要设定网页的背景颜色,所针对的对象就是document,所用的属性名是bgcolor,如document.bgcolor="blue",就是表示使背景的颜色为蓝色。

6、事件

用户与网页交互时产生的操作,称为事件。绝大部分事都由用户的动作所引发,如:用户按鼠标的按键,就产生onclick事件,若鼠标的指针在链接上移动,就产生onmouseover事件等等。在Javascript中,事件往往与事件处理程序配套使用。

7、变量

如 var myVariable = "some value";

经典案例:

js抽奖

包含的知识点:计时器的使用,document对象的方法的使用,js数组的使用,js内置对象的使用,js系统函数的使用,注册事件。

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
  <title></title>
  <script type="text/javascript">
    var alldata = "a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z"
    var alldataarr = alldata.split(",");
    var num = alldataarr.length - 1;
    var timer;   
    function start() {
      clearInterval(timer);h
      timer = setInterval('change()', 10);
    }
    function change() {
      document.getElementById("oknum").innerHTML = alldataarr[GetRnd(0, num)];
    }
    function GetRnd(min, max) {
      return parseInt(Math.random() * (max - min + 1));
    }   
    function ok() {
      clearInterval(timer);
      document.getElementById("showresult").value = document.getElementById("oknum").innerText;
    }   
</script> 
</head>
<body>
 
<div id="oknum" name="oknum" >请单击开始</div> 
  <button onclick="start()" accesskey="s">开始</button>  <!--//accesskey 属性规定激活(使元素获得焦点)元素的快捷键。-->
<button onclick="ok()" accesskey="o">停止</button> 
您的选择是: 
<input type="text" id="showresult" value=""/>
</body>
</html

背景图片的切换

包含的知识点:计时器的使用,document对象的方法的使用

<script type="text/javascript">
        window.onload = function () {
      
      setInterval(step, 1000);
    }
    var num = 1;
    function step() {
      if (num < 5) {
        num++;
      } else {
        num = 1;
      }
      var dom = document.getElementById("imgId");
      //更改它images的src属性
      dom.src = 'images/' + num + '.jpg';
    }
   
  </script>
</head>
<body>
  <img src="images/1.jpg" width="500" height="500" id="imgId"/>
</body>
</html>

跑马灯:

包含的知识点:计时器的使用,document对象的方法的使用,系统函数的使用,鼠标事件的使用,节点操作的使用,循环语句,判断语句

<script src="js/jquery-1.8.3.min.js"></script>
  <script type="text/JavaScript">     
    ( function ($) {
      $.fn.extend({
        RollTitle: function (opt, callback) {
          if (!opt) var opt = {};
          var _this = this;
          _this.timer = null;
          _this.lineH = _this.find("li:first").height();
          _this.line = opt.line ? parseInt(opt.line, 15) : parseInt(_this.height() / _this.lineH, 10);
          _this.speed = opt.speed ? parseInt(opt.speed, 10) : 3000, 
          _this.timespan = opt.timespan ? parseInt(opt.timespan, 13) : 5000; 
          if (_this.line == 0) this.line = 1;
          _this.upHeight = 0 - _this.line * _this.lineH;
          _this.scrollUp = function () {
            _this.animate({
              marginTop: _this.upHeight
            }, _this.speed, function () {
              for (i = 1; i <= _this.line; i++) {
                _this.find("li:first").appendTo(_this);
              }
              _this.css({ marginTop: 0 });
            });
          }
          _this.hover(function () {
            clearInterval(_this.timer);
          }, function () {
            _this.timer = setInterval(function () { _this.scrollUp(); }, _this.timespan);
          }).mouseout();
        }
      })})(jQuery);
</script>
</head>
<body>
  <ul id="RunTopic" style="list-style:none ;background:#0ff ;border:2px dashed blue;width:100px;" >
<li style="color:red">i love you</li>
<li style="color:pink">I LOVE YOU</li>
<li style="color:blue">I LOVE you</li>
<li style="color:green">i LOVE YOU</li>
<li style="color:yellowgreen">I love YOU</li>
</ul>
<br/>
<input  type="button" onclick="test();" value="跑马灯" >
   <script type="text/javascript">
     function test()
     {
       $("#RunTopic").find("li:first").appendTo($("#RunTopic"));
     }    
</script> 
</body>
</html>

javascript的一番理解,就到这了,以后有关于js的案例会放到这里。希望能帮到大家!!!

以上这篇javascript的理解及经典案例分析就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
Jan 09 Javascript
javascript与CSS复习(《精通javascript》)
Jun 29 Javascript
JS 去除Array中的null值示例代码
Nov 20 Javascript
IE浏览器IFrame对象内存不释放问题解决方法
Aug 22 Javascript
Bootstrap表单Form全面解析
Jun 13 Javascript
js前端实现多图图片上传预览的两个方法(推荐)
Nov 18 Javascript
微信小程序promsie.all和promise顺序执行
Oct 27 Javascript
图片懒加载imgLazyLoading.js使用详解
Sep 15 Javascript
Vue2.0 给Tab标签页和页面切换过渡添加样式的方法
Mar 13 Javascript
浅谈laytpl 模板空值显示null的解决方法及简单的js表达式
Sep 19 Javascript
AntV F2和vue-cli构建移动端可视化视图过程详解
Oct 08 Javascript
vue制作抓娃娃机的示例代码
Apr 17 Javascript
JS中对象与字符串的互相转换详解
May 20 #Javascript
JS 对象(Object)和字符串(String)互转方法
May 20 #Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
May 20 #Javascript
浅析JavaScript Array和string的转换(推荐)
May 20 #Javascript
深入理解JS addLoadEvent函数
May 20 #Javascript
用jQuery获取table中行id和td值的实现代码
May 19 #Javascript
jquery遍历table的tr获取td的值实现方法
May 19 #Javascript
You might like
虚拟主机中对PHP的特殊设置
2006/10/09 PHP
PHP中数组的三种排序方法分享
2012/05/07 PHP
ThinkPHP模板范围判断输出In标签与Range标签用法详解
2014/06/30 PHP
初识Laravel
2014/10/30 PHP
windows7下php开发环境搭建图文教程
2015/01/06 PHP
php绘制圆形的方法
2015/01/24 PHP
php实现给一张图片加上水印效果
2016/01/02 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
JavaScript中for..in循环陷阱介绍
2013/11/12 Javascript
在JavaScript中判断整型的N种方法示例介绍
2014/06/18 Javascript
JavaScript AJAX之惰性载入函数
2014/08/27 Javascript
使用jQuery实现图片遮罩半透明坠落遮挡
2015/03/16 Javascript
JavaScript的Ext JS框架中的GridPanel组件使用指南
2016/05/21 Javascript
微信公众号开发 实现点击返回按钮就返回到聊天界面
2016/12/15 Javascript
JS实现购物车特效
2017/02/02 Javascript
JS回调函数简单用法示例
2017/02/09 Javascript
js tab栏切换代码实例解析
2019/09/03 Javascript
JS函数进阶之继承用法实例分析
2020/01/15 Javascript
解决vue一个页面中复用同一个echarts组件的问题
2020/07/19 Javascript
vue使用echarts实现水平柱形图实例
2020/09/09 Javascript
Python的Django框架中settings文件的部署建议
2015/05/30 Python
python简单商城购物车实例代码
2018/03/15 Python
​如何愉快地迁移到 Python 3
2019/04/28 Python
如何不用安装python就能在.NET里调用Python库
2019/07/12 Python
python 爬虫网页登陆的简单实现
2020/11/30 Python
Brasty波兰:香水、化妆品、手表网上商店
2019/04/15 全球购物
优质飞蝇钓和渔具:RiverBum
2020/05/10 全球购物
英文版销售经理个人求职信
2013/11/20 职场文书
大课间活动制度
2014/01/18 职场文书
音乐器材管理制度
2014/01/31 职场文书
函授药学自我鉴定
2014/02/07 职场文书
新春联欢会主持词
2014/03/24 职场文书
社区矫正工作方案
2014/06/04 职场文书
2014年机关工会工作总结
2014/12/19 职场文书
Go 通过结构struct实现接口interface的问题
2021/10/05 Golang
关于vue-router-link选择样式设置
2022/04/30 Vue.js