javascript与事件
javascript与事件
js常用事件
- js捕捉回车键
- js回调函数的event参数(一直都有传,就看你有没有接,有没有接的需求)
- event.keyCode(事件句柄:onkeydown)
- keyup事件
js回调函数概念
- 某事件发生时,执行某函数
js代码的执行顺序
- 注意加载元素与对元素进行操作的前后关系
js运算符
void运算符
<a href="javascript:void(0)" onclick="window.alert('test code')" />
//既保存超链接样式,点击之后执行一段js代码,同时又不能完成页面跳转
//void(表达式)执行表达式,但是不返回任何结果
js控制语句
常见控制语句
js特殊的控制语句
for...in...
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
- 对数组越界问题做了内部处理,未定义的为undefined
- 常用方法
<!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编程
window.open 与window.close
- window.open(url, 新窗口打开位置)
- window.close()关闭当前窗口
window.confirm()确认框
- 确定,返回true
- 取消,返回false
window.history.
- window.history.go(1/-1)前进/后退
- window.history.back()后退
window.location.href 或者 document.location.href (href可以去掉)
设置当前窗口为顶级窗口
if(window.top != window.self){
window.top.location = window.self.location
}
图解BOM与DOM

JSON
- 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与事件的更多相关文章
- jQuery $(document).ready()和JavaScript onload事件
jQuery $(document).ready()和JavaScript onload事件 Why we need a right time? 对元素的操作和事件的绑定需要等待一个合适的时机,可以看 ...
- Javascript事件模型系列(四)我所理解的javascript自定义事件
被我拖延了将近一个月的javascript事件模型系列终于迎来了第四篇,也是我计划中的最后一篇,说来太惭愧了,本来计划一到两个星期写完的,谁知中间遇到了很多事情,公司的个人的,搞的自己心烦意乱浮躁了一 ...
- javascript通用事件封装
随着最近几年Html5的兴起,越来越多的应用采用html5进行实现,一个优秀的网页应用不但需要美观简洁的UI界面,更需要一个良好的交互.网页应用大部分的交互需要用javascript事件进行实现.虽然 ...
- javascript的事件
前戏 今天在博客中看到了javascript的事件机制,就自己试试写一个简单的冒泡捕获测试,但是测试结果出乎了我的意料,主要是自己原来对事件了解不是很清楚,现在写篇博客记录下. 基础 先来看一下我在A ...
- javascript对象事件绑定方法
javascript对象事件绑定方法 今天在做对象事件绑定的过程中出现了一点异外情况,由于事件方法是由参数传过来的,需要将当前对象call过去,方便方法体里直接调用this 错误写法 obj.oncl ...
- JavaScript的事件代理(转)
如果你想给网页添加点JavaScript的交互性,也许你已经听过JavaScript的事件代理(event delegation),并且觉得这是那些发烧友级别的JavaScript程序员才会关心的什么 ...
- [转]javascript指定事件处理程序包括三种方式:
javascript指定事件处理程序包括三种方式: (1):DOM0级事件处理程序 如: 代码如下: var btn=document.getElementById("mybtn" ...
- JavaScript中事件绑定的方法总结
最近收集了一些关于JavaScript绑定事件的方法,汇总了一下,不全面,但是,希望便于以后自己查看. JavaScript中绑定事件的方法主要有三种: 1 在DOM元素中直接绑定 2 JavaScr ...
- JavaScript的事件监听、捕获和冒泡
在前端开发中,我们经常需要对某些事件进行监听.这样只要在指定的元素上触发了该事件,就会执行一个回调函数来进行相关的操作. 而JavaScript中事件监听的方法总共有三种,分别如下: element. ...
- JavaScript 计时事件
JavaScript 计时事件 通过使用 JavaScript,我们有能力作到在一个设定的时间间隔之后来执行代码,而不是在函数被调用后立即执行.我们称之为计时事件. 在 JavaScritp 中使用计 ...
随机推荐
- Sentinel介绍与使用 收藏起来
点赞再看,养成习惯,微信搜索[牧小农]关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友. 项目源码地址:公众号回复 sentinel,即可免费获取源码 前言 在家休息的的时候,突然小勇打 ...
- python之名称空间与函数对象
目录 名称空间 内置名称空间 全局名称空间 局部名称空间 名称的查找顺序 作用域 global关键字 nonlocal关键字 函数名的多种用法 函数的嵌套 名称空间 名称空间就是变量名与变量值绑定关系 ...
- vue跑马灯vue3-marquee
安装vue3-marquee 如果您使用的是 npm: npm install vue3-marquee@latest --save 如果您使用的是yarn: yarn add vue3-marque ...
- 软件构造Lab2实验总结
本次实验训练抽象数据类型(ADT)的设计.规约.测试,并使用面向对象编程(OOP)技术实现ADT.具体来说内容如下: 针对给定的应用问题,从问题描述中识别所需的ADT: 设计ADT规约(pre-con ...
- redis客户端打不开 提示cannot connect to server dev.check log for details
我当前状况是redis客户端打不开,之前一直好好的(虽然作为一个程序员我不配说这句话,哈哈),但是我排查了我觉得所有的可能性,我用的阿里云的redis(还没有到购买到期时间),然后我就关闭了防火墙,你 ...
- 2022年最强八股文《码出八股文-斩出offer线》
宝剑锋从磨砺出,梅花香自苦寒来,大家好,我是小码哥 整理好的八股文终于完成了,希望看完对大家面试有所收获! 目录: 基础篇 javaOOP面试题 java集合/泛型面试题 java异常面试题 java ...
- 线程池:ThreadPoolExcutor源码阅读
ThreadPoolExcutor源码流程图:(图片较大,下载再看比较方便) 线程池里的二进制奥秘 前言: 线程池的五种状态state(RUNNING.SHUTDOWN.STOP.TIDYING.TE ...
- javascript写淡入淡出效果的轮播图
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- VisionPro · C# · 界面显示视觉结果图像
程序界面通过 CogRecordDisplay 控件显示视觉运行结果图像. 按指定图像显示,代码如下: using System; using System.Windows.Forms; using ...
- 嵌入式中 动态阿拉伯语字符串 转换 LCD显示字符串【感谢建国雄心】
本文参考CSDBN:建国雄心 的博客,这里找不到该帖子,放一个类似的仅供参考https://blog.csdn.net/qiaojiongzeng6321/article/details/748572 ...