javascript的自定义对象/取消事件/事件兼容性/取消冒泡
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>自定义对象</title>
<!--
自定义对象是一种特殊数据类型,由属性和方法封装而成.
-->
<script type="text/javascript">
function method1() {
var person=new Object();
//添加属性
person.name=" 瑞兹 ";
person.spell=957;
//添加方法1.
person.say=new Function("alert(' person.name ')");
//添加方法2.
person.way=way;
function way(){
var num=0;
for(var i=0;i<100;i++){
num+=i;
}
alert(num);
}
}
/*
构造器 创建对象
*/
function person(name,age){
//定义属性
this.name=name;
this.age=age;
//定义成员方法:
this.sayName=function(){
alert(this.name);
}
}
function method2(){
var p=new person();
//通过构造器创建对象
}
/*
JSON 是一种轻量级的数据交换格式 :
-使用 键值对 形式定义
-名称需要用双引号 “” 引起来
-多个对定义之间 使用 ,隔开
*/
function method3(){
var p={"name":"张韶涵","age":30,"say":function(){alert("看得最远的地方")}};
}
</script>
</head>
<body>
<input type="button" onclick="method1();" value="创建通用对象模板!">
<input type="button" onclick="method2();" value="创建对象模板!">
<input type="button" onclick="method3();" value="创建JSON对象模板!">
</body>
</html>
2.取消事件:
<!DOCTYPE html><html>
<head>
<meta charset="UTF-8">
<title>取消事件写法</title>
<script type="text/javascript">
function judge(){
var result =confirm('确定要删除吗?');
return result;
}
</script>
<body>
<form>
<input type="text" value="我是要提交的数据">
<input type="submit" value="删除" onclick="judge();">
</form>
</body>
</head></html>
3.事件兼容性
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>取消事件写法</title>
<script type="text/javascript">
function fun(e){
console.log(event.clientX+','+event.clientY);//获取点击时的位置,单位是像素,次写法可能出现不兼容问题 //不兼容的提示:reffereceError event is not defined // 兼容写法如下:
console.log(e.clientX+','+e.clientY);/* 获取事件源的写法(即事件的目标节点) IE:event.srcElement Fire Fox: event.target*/console.log(event.srcElement);
console.log(event.target);// 兼容写法: var evesrc=event.srcElement||event.target; console.log(evesrc.nodeName);
} </script> <body> <p onclick="console.log(event.clientX);"> HTML使用</p>
<p onclick="fun(event);"> JS使用</p>
</body> </head> </html>
5.取消冒泡
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>事件冒泡处理机制</title>
<style type="text/css">
div{
border:1px solid #ccc;
margin:10px;
padding:20px;
}
#d1{
width:300px;
height:300px;
background-color:red;
}
#d2{
width:200px;
height:200px;
background-color:blue;
}
#d3{
width:100px;
height:100px;
background-color:green;
}
</style>
<script type="text/javascript">
function f1(){
alert("D1");
}
function f2(){
alert("D2");
}
function f3(e){
alert("D3");
//取消冒泡 的写法
if(e.stopPropagation){
e.stopPropagation();
}else{
e.cancelBubble();
}
}
</script>
</head>
<body>
<div id="d1" onclick="f1()">D1
<div id="d2" onclick="f2();">D2
<div id="d3" onclick="f3(event);">D3</div>
</div>
</div>
</body>
</html>
javascript的自定义对象/取消事件/事件兼容性/取消冒泡的更多相关文章
- javascript创建自定义对象和prototype
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- javascript获取事件源对象和产生事件的对象
事件源对象是指event对象,其封装了与事件相关的详细信息,比如按键状态. 获取事件源对象的方法 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...
- JavaScript内置对象与原型继承
(一) 理解JavaScript类定义 1>关于内置对象理解 console.log(Date.prototype.__proto__===Object.prototype //tru ...
- javascript第一弹——对象
一. 什么是对象 对象是包含一组变量(称为属性)和函数(称为方法)的集合的实例. javascript中所有事物都是对象 javascript有很多内建对象 javascript允许自定义对象 对象只 ...
- javascript 内置对象
什么是对象 javascript中的所有事物都是对象:字符串 数组 数值 函数... 每个对象都带有属性和方法 javascript允许自定义对象 自定义对象: 定义并创建对象实例 使 ...
- JavaScript---网络编程(4)-Date、Math、Global和自定义对象
本节博客进行Date对象.Math对象.Global对象和自定义对象的用法演示. 首先是一个out.js文件内容(输出到网页中的自定义输出方法): function println(parma){ d ...
- 学习javaScript必知必会(4)~事件、事件绑定、取消事件冒泡、事件对象
1.常用的事件: ① onload:页面加载 ② onblur: 失去焦点 onfocus: 获取焦点 ③ onclick:点击 ④ onmouseover:鼠标经过 onmouseout:鼠标离开 ...
- JavaScript事件---事件对象
发文不易,若转载传播,请亲注明出处,谢谢! 内容提纲: 1.事件对象 2.鼠标事件 3.键盘事件 4.W3C与IE JavaScript事件的一个重要方面是它们拥有一些相对一致的特点,可以给你的开 ...
- JavaScript(第二十四天)【事件对象】
JavaScript事件的一个重要方面是它们拥有一些相对一致的特点,可以给你的开发提供更多的强大功能.最方便和强大的就是事件对象,他们可以帮你处理鼠标事件和键盘敲击方面的情况,此外还可以修改一般事件的 ...
随机推荐
- 安装ruby的一些坑
之前一直下载不下来.是因为需要翻墙.
- 在web.xml中可以设置jsp标签吗?
<jsp-config> <taglib> <taglib-uri>http://java.sun.com/jstl/core</taglib-uri> ...
- Arrays类常用方法
Arrays类 3.1 概述 java.util.Arrays 此类包含用来操作数组的各种方法,比如排序和搜索等.其所有方法均为静态方法. 3.2 操作数组的方法 1.将参数数组变成字符串 publi ...
- NFS挂载共享文件夹
修改rcS启动脚本,使开发板初始化完成,自动挂载共享文件夹 修改开发板ip,使之与虚拟机处于同一网段(二者可以互ping) 挂载虚拟机的共享文件夹 rcS 1 ifconfig eth ...
- C++获取文件夹中所有文件
获取文件夹中的文件,用到过很多次,每次用的时候都要去查下,很烦,所以想自己写下,当然,借鉴了很多其他大佬的博客 主要实现的函数,如下: void getFiles( string path, vect ...
- Golang的变量定义及使用案例
Golang的变量定义及使用案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.变量的定义 package main import "fmt" func m ...
- JS 三大难点
1,作用域链 2,原型链 3,闭包
- Spring Boot2(006):关于配置类(Configuration Classes)和配置(Configuration)
一.配置类(Configuration Classes) Spring Boot 支持基于 xml 的配置,但更偏向于使用基于 Java 的配置,通常建议使用定义有 main 方法的主 @Config ...
- SharePreference的使用
SharePreference 一般用于保存偏好设置,比如说我们设置里的条目 sharepreference使用步骤 1.拿到sharepreference //拿到share preference ...
- 088-PHP数组运用 - 通过循环函数过滤部分数组
<?php function myfunc(&$arr){ //自定义一个过滤函数 $j=count($arr); for($i=0;$i<$j;$i++){ if($arr[$i ...