javascript与事件

js常用事件

  1. js捕捉回车键

    1. js回调函数的event参数(一直都有传,就看你有没有接,有没有接的需求)
    2. event.keyCode(事件句柄:onkeydown)
  2. keyup事件

js回调函数概念

  1. 某事件发生时,执行某函数

js代码的执行顺序

  1. 注意加载元素与对元素进行操作的前后关系

js运算符

  1. void运算符

    <a href="javascript:void(0)" onclick="window.alert('test code')" />
    //既保存超链接样式,点击之后执行一段js代码,同时又不能完成页面跳转
    //void(表达式)执行表达式,但是不返回任何结果

js控制语句

  1. 常见控制语句

  2. js特殊的控制语句

    1. for...in...

    2. with语句

      	<script type="text/javascript">
      
      		//js for..in..的两个使用场景
      
      		//场景一:对象
      alert("场景1:对象");
      function User(username, password) {
      this.username = username;
      this.password = password;
      } var user = new User("xun", "just a test"); for(var value in user){
      alert(typeof value);
      alert(value);
      alert(user[value]);
      } //场景二:数组
      alert("场景2:数组");
      var arry = [false, true, 3.14, "test"];
      for(var index in arry){
      alert(typeof index);
      alert(index);
      alert(arry[index]);
      } //js with(带上)语句
      with(user){
      alert(username + "," + password);
      //相当于:alert(user.username + "," + user.password)
      }
      </script>

js内置数组对象Array

  1. 对数组越界问题做了内部处理,未定义的为undefined
  2. 常用方法
<!DOCTYPE html>
<html lang="en">
<head>
<title>js内置数组对象</title>
<meta charset="UTF-8">
</head>
<body>
<script>
//js内置数组对象Array
var array1 = new Array();
alert(array1.length);
var array2 = new Array(3);
alert(array2.length);
var array3 = new Array(2, 3);
alert(array3.length);
//常用:var array = [];
//特点:自动扩容 //内置数组对象常用方法
var array4 = array3.reverse(); //数组3自身元素也发生了反转
alert("array3: " + array3.join("-"));
alert("array4: " + array4.join("-")); //js内置数组对象可以模拟数据栈
array3.push(1);
alert("array3: " + array3.join("-"));
var lastElt = array3.pop();
alert("last element: " + lastElt);
</script>
</body>
</html>

js的BOM编程

  1. window.open 与window.close

    1. window.open(url, 新窗口打开位置)
    2. window.close()关闭当前窗口
  2. window.confirm()确认框

    1. 确定,返回true
    2. 取消,返回false
  3. window.history.

    1. window.history.go(1/-1)前进/后退
    2. window.history.back()后退
  4. window.location.href 或者 document.location.href (href可以去掉)

  5. 设置当前窗口为顶级窗口

    if(window.top != window.self){
    window.top.location = window.self.location
    }

图解BOM与DOM

JSON

  1. eval函数
<!DOCTYPE html>
<html lang="en">
<head>
<title>eval函数</title>
<meta charset="UTF-8">
</head>
<body>
<script>
var jsonData = "{\"username\":\"zhangsan\", \"password\":\"123\"}";
window.eval("var jsonObj = " + jsonData);
alert(jsonObj.username + "," + jsonObj.password);
</script>
</body>
</html>

javascript与事件的更多相关文章

  1. jQuery $(document).ready()和JavaScript onload事件

    jQuery $(document).ready()和JavaScript onload事件 Why we need a right time? 对元素的操作和事件的绑定需要等待一个合适的时机,可以看 ...

  2. Javascript事件模型系列(四)我所理解的javascript自定义事件

    被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情,公司的个人的,搞的自己心烦意乱浮躁了一 ...

  3. javascript通用事件封装

    随着最近几年Html5的兴起,越来越多的应用采用html5进行实现,一个优秀的网页应用不但需要美观简洁的UI界面,更需要一个良好的交互.网页应用大部分的交互需要用javascript事件进行实现.虽然 ...

  4. javascript的事件

    前戏 今天在博客中看到了javascript的事件机制,就自己试试写一个简单的冒泡捕获测试,但是测试结果出乎了我的意料,主要是自己原来对事件了解不是很清楚,现在写篇博客记录下. 基础 先来看一下我在A ...

  5. javascript对象事件绑定方法

    javascript对象事件绑定方法 今天在做对象事件绑定的过程中出现了一点异外情况,由于事件方法是由参数传过来的,需要将当前对象call过去,方便方法体里直接调用this 错误写法 obj.oncl ...

  6. JavaScript的事件代理(转)

    如果你想给网页添加点JavaScript的交互性,也许你已经听过JavaScript的事件代理(event delegation),并且觉得这是那些发烧友级别的JavaScript程序员才会关心的什么 ...

  7. [转]javascript指定事件处理程序包括三种方式:

    javascript指定事件处理程序包括三种方式: (1):DOM0级事件处理程序 如: 代码如下: var btn=document.getElementById("mybtn" ...

  8. JavaScript中事件绑定的方法总结

    最近收集了一些关于JavaScript绑定事件的方法,汇总了一下,不全面,但是,希望便于以后自己查看. JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScr ...

  9. JavaScript的事件监听、捕获和冒泡

    在前端开发中,我们经常需要对某些事件进行监听.这样只要在指定的元素上触发了该事件,就会执行一个回调函数来进行相关的操作. 而JavaScript中事件监听的方法总共有三种,分别如下: element. ...

  10. JavaScript 计时事件

    JavaScript 计时事件 通过使用 JavaScript,我们有能力作到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行.我们称之为计时事件. 在 JavaScritp 中使用计 ...

随机推荐

  1. QT快速入门

    QT快速入门 本文档将介绍QT工程的创建.UI界面布局,并以计数器为例了解QT中多线程的用法,最终完成一个基础的QT项目. 1 创建QT工程文件 在安装好QT之后,能够在其安装组件中找到Qt Crea ...

  2. 【面试普通人VS高手】Spring 中Bean的作用域有哪些?

    一个工作3年的小伙子,去面试被问到Spring里面的问题. 这个问题比较简单,但是他却没有回答上来. 虽然他可以通过搜索引擎找到答案,但是如果没有理解,下次面试还是不会! 这个面试题是: " ...

  3. python入门基础知识二(字符串的常用操作方法)

    下标/索引: a = "I'm interested in Python." print(a[4]) i # 英文的字符串每一个下标/索引对应一个字母(含标点) a = '我喜欢p ...

  4. 【算法】冒泡排序(Bubble Sort)(一)

    冒泡排序(Bubble Sort) 冒泡排序是一种简单的排序算法.它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来.走访数列的工作是重复地进行直到没有再需要交换,也就是 ...

  5. 安装Siege到Linux(源码)

    运行环境 系统版本:CentOS Linux release 7.3.1611 (Core) 软件版本:siege-4.0.4 硬件要求:无 安装过程 1.安装依赖 [root@localhost ~ ...

  6. [python][flask] Flask 图片上传与下载例子(支持漂亮的拖拽上传)

    目录 1.效果预览 2.新增逻辑概览 3.tuchuang.py 逻辑介绍 3.1 图片上传 3.2 图片合法检查 3.3 图片下载 4.__init__.py 逻辑介绍 5.upload.html ...

  7. 分布式机器学习:PageRank算法的并行化实现(PySpark)

    1. PageRank的两种串行迭代求解算法 我们在博客<数值分析:幂迭代和PageRank算法(Numpy实现)>算法中提到过用幂法求解PageRank. 给定有向图 我们可以写出其马尔 ...

  8. 开源流程引擎该如何选择flowable还是camunda

    市场上比较有名的开源流程引擎有osworkflow.jbpm.activiti.flowable.camunda.现在国内用的最多的是activiti.flowable.camunda,下面主要从功能 ...

  9. ssh打通

    打通ssh https://www.cnblogs.com/yolanda-lee/p/4975453.html

  10. 2.NoSQL之Redis配置与优化

    一.关系型数据库与非关系数据库 关系型数据库: 关系型数据库是一个结构化的数据库,创建在关系模型(二维表格模型)基础上,一般面向于记录. sQL语句(标准数据查询语言)就是一种基于关系型数据库的语言, ...