js怎么覆盖原有方法实现重写

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<script>
function myblur () {
alert("1、离开");
}
function bindEvent(func){
myblur = func;
}
function myonclick() {
bindEvent(function(){
alert("天啊!myblur方法被覆盖了!");
});
}
</script>
</head>
<body>
<input type="text" onblur="myblur()" value="光标选中然后光标离开会调用myblur()方法"/>
<input type="button" onclick="myonclick()" value="覆盖myblur()" />
注:覆盖myblur()后,再次光标选中输入框然后再离开
</body>
</html>

目的:提高完善的调用方法。

如果你做了一个编辑器,里面有提供一些光标离开事件等,最好使用此方法来操作,因为当他人使用你的编辑器时,也许要用到编辑器提供的事件方法处理些事情,其中部分事件需要根据特殊要求进行重写,因此,出现这种情况,提供允许重写编辑器提供的事件方法是很必要的!

(0)

相关推荐

  • 浅谈JavaScript 覆盖原型以及更改原型

    覆盖原型 //囚犯示例 //1.定义原型对象 var proto = { sentence : 4, //监禁年限 probation: 2 //缓刑年限 }; //2.定义原型对象的构造函数 var Prisoner = function(name, id) { this.name = name; this.id = id; }; //3.将构造函数关联到原型 Prisoner.prototype = proto; //4.实例化对象--采用工厂函数实例化对象 var makePrisoner

  • 关于javascript原型的修改与重写(覆盖)差别详解

    每个JavaScript函数都有prototype属性(javascript对象没有这个属性),这个属性引用了一个对象,这个对象就是原型对象.javascript允许我们修改这个原型对象. 修改有2种方式: 方式1:在原有的原型对象上增加属性或者方法 function Person() { } Person.prototype.add = function(){ alert(this.name); }; Person.prototype.name = "aty"; var p1 = n

  • js修改原型的属性使用介绍

    在javascript中原型(prototype)定义了特定类型的所有实例都可以访问的属性和方法,很多些情况下需要重新对原型中的属性赋值,如果方法错误会导致一些意想不到的情况(仅仅是对像我这样的新手奋斗),下面通过测试对这部分知识做一个简单的总结. 基本类型定义如下: 复制代码 代码如下: function Person(){} Person.prototype={ constructor:Person, name:"person", age:100, friends:["a

  • js怎么覆盖原有方法实现重写

    <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> <script> function myblur () { alert("1.离开"); } function bindEvent(func){ myblur = func; } function myonclick() { bin

  • js toFixed()方法的重写实现精度的统一

    但凡用过js 中的toFix() 方法的, 应该都知道这个方法存在一个小小的BUG. 在IE 下和FF 下对于小数的进位有点不同. 例如( 0.005)在ie 下 toFix(2)=0.00. 在FF 下 toFix(2)=0.01. 这样就会造成数据的差异. 我们可以通过 重写 这个方法来实现精度的统一. 复制代码 代码如下: Number.prototype.toFixed = function(s) { return (parseInt(this * Math.pow( 10, s ) +

  • Angular4.0中引入laydate.js日期插件的方法教程

    前言 laydate.js经过贤心大大的重写之后功能越来越强大,用起来也愈渐灵活了,大家都知道.Angular是不支持直接引入js文件的,下面介绍项目如果引入laydate.js的方法(可同样用于其他js文件引入,可能会有一些差别) 方法如下: 一.将下载的laydate中的js和theme文件放到一个统一的文件下面,我把它放到asset下 二.在angular-cli.json配置js 三.修改laydate.js 找到这一句补全路径和删除版本号 "modules/laydate/"

  • Java中覆盖finalize()方法实例代码

    本文研究的主要是Java中关于覆盖finalize()方法的一次尝试,具体实现如下. 测试代码 package com.alioo.gc; /** * 执行结果: * */ public class FinalizeEscapeGC{ public static FinalizeEscapeGC instance=null; public void isAlive(){ System.out.println("yes,i am still alive"); } @Override pr

  • Java中方法的重写与成员变量的隐藏

    这篇文章讨论了Java面向对象概念中一个基本的概念–Field Hiding(隐藏成员变量) 在讨论这个问题之前,我们看一段特别特别简单的代码,请问一下方法的数据结果是什么? /** * @author Hollis 17/9/27. */ public class FieldOverriding { public static void main(String[] args) { Sub c1 = new Sub(); System.out.println(" c1.s : " +

  • 详解java中的深拷贝和浅拷贝(clone()方法的重写、使用序列化实现真正的深拷贝)

    1.序列化实现 public class CloneUtils { @SuppressWarnings("unchecked") public static <T extends Serializable> T clone(T object){ T cloneObj = null; try { ByteArrayOutputStream out = new ByteArrayOutputStream(); ObjectOutputStream obs = new Objec

  • 详解小程序设置缓存并且不覆盖原有数据

    最近在写小程序的小项目,因为是刚上手小程序,这途中遇到了许多问题,所幸在自己的坚持不懈下基本都得到了解决,今天就记录一下怎么设置缓存数据并且不覆盖吧,如果有错误的地方麻烦大家指正,互相学习一下! 这是官方的关于缓存的说明,它会覆盖掉之前的内容.我还是直接上源码吧 这是writecomment.js文件 Page({ /** * 页面的初始数据 */ data: { }, submit: function (event) { var writecomment = event.detail.valu

  • 详解本地Vue项目请求本地Node.js服务器的配置方法

    目录 1.使用vue-cli脚手架搭建vue项目 2.使用koa搭建node后端 3.Vue项目中添加后端请求 参考资料: 前言:本文只针对自己需要本地模拟接口于是搭建一个本地node服务器供自己测试使用,仅作自己从头到尾搭建项目的记录 1.使用vue-cli脚手架搭建vue项目 1.在桌面运行 cmd,使用命令vue create demo创建一个vue项目demo,插件依赖等使用默认配置2.项目创建成功之后,使用命令 cd demo,进入 demo 文件夹,然后使用命令 npm run se

  • python重写方法和重写特殊构造方法

    目录 继承 多继承的优缺点 子类的方法__init__() 重写父类的方法 将实例用作属性 继承 编写类时,并非总是要从空白开始,如果编写的类是另一个现成类的特殊版本,可使用继承,继承分为单继承和多继承. 一个类继承另一个类时,将自动获得另一个类的所有属性和方法,原有的类称为父类,而新类称为子类.子类继承了父类所有的属性和方法,同时还可以定义自己的属性和方法,这样一来就解决了类类与类之间代码冗余的问题 那么儿子怎么查看自己的父亲是谁呢? 如下所示: class Parent_1: pass cl

  • jQuery插件artDialog.js使用与关闭方法示例

    本文实例讲述了jQuery插件artDialog.js使用与关闭方法.分享给大家供大家参考,具体如下: 子窗口关闭artdialog终极解决方案: window.parent.window.art.dialog({ id: 'qin123' }).close(); <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-t

随机推荐