`
Virgo_S
  • 浏览: 1138517 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

prototype实例一则

    博客分类:
  • JS
阅读更多
为什么我还没有点击链接 zhuanyi函数就运行了。。。
<script language="JavaScript"> 
window.onload = rolloverInit; 
function rolloverInit() 
{ 
for(var i=1; i<document.links.length; i++) 
{ var lianjie = document.links[i]; 
lianjie.onclick = zhuanyi(lianjie); 
}} 
function zhuanyi(thislianjie){ 
alert("neirong"); 
return false 
} 
</script> 

</head> 

<body onLoad="rolloverInit()"> 

<a href="http://www.baidu.com">aaf</a> 
<a href="http://www.baidu.com">恶毒发生法</a> 
<a href="http://www.baidu.com">a犯得上</a> 
</body> 



<html> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=GBK"/> 
<title>newfile</title> 
<script language="JavaScript"> 
Function.prototype.bind = function(obj) { // 对Function原型bind方法申明 
var method = this, // this指向调用方法,此处指funs.zhuanyi 
temp = function() { 
return method.apply(obj, arguments); // 这里指funs.zhuanyi接受funs为this;即指funs.zhuanyi方法内的this现在指向funs; 
}; 

return temp; 
} 

function fun(thislianjie) { 
this._thislianjie = thislianjie; 
this.zhuanyi = function() { 
alert(this._thislianjie.href); 
return false; 
} 
} 

function rolloverInit() { 

for(var i=0; i<document.links.length; i++) { 
var lianjie = document.links[i], 
funs = new fun(lianjie); // 创建funs,将lianjie作为参数赋予给funs里的this._thislianjie; 
lianjie.onclick = funs.zhuanyi.bind(funs); // 调用funs.zhuanyi方法,同时将funs作为fun()内部的this,以保证this._thislianjie的持有者有相同的。 
} 
} 

window.onload = rolloverInit; 
</script> 
</head> 
<body> 
<a href="http://www.baidu.com">aaf</a> 
<a href="http://www.baidu.com">恶毒发生法</a> 
<a href="http://www.baidu.com">a犯得上</a> 
</body> 
</html>

</html>
分享到:
评论

相关推荐

    基于Prototype的Validation表单验证插件.rar

    一款基于Prototype的Validation表单验证插件,实现Ajax风格的无刷新表单验证功能,当用户输入完表单,即时显示该项输入是否正确,不正确则会给出提示,适合那些比较喜欢简洁风格,又要求功能准确的用户,本款表单...

    图解prototype、proto和constructor的三角关系

    而关于原型,则是prototype、proto和constructor的三角关系。本文先用一张图开宗明义,然后详细解释原型的三角关系 图示 概念  上图中的复杂关系,实际上来源就两行代码 function Foo(){};var f1 = new Foo; ...

    jquery 资料合集 实例

    有人使用这样的一比喻来比较prototype和jquery:prototype就像Java,而jquery就像ruby.实际上我比较喜欢java(少接触Ruby 罢了)但是jquery的简单的实用的确有相当大的吸引力啊!在项目里我把jquery作为自己唯一的...

    JS中的hasOwnProperty()和isPrototypeOf()属性实例详解

    这两个属性都是Object.prototype所提供:Object.prototype.hasOwnProperty()和Object.prototype.isPropertyOf() 先讲解hasOwnProperty()方法和使用。...//实例obj是否包含有圆括号中的属性,是则返回true,否则是fal

    程序天下:JavaScript实例自学手册

    10.11 选中表格行前的复选框则行变色 10.12 用JavaScript生成面包屑导航 10.13 复选框的反选 10.14 选中所有复选框 10.15 复选框全选(二) 10.16 改变slsect选中项的颜色特效 第11章 颜色处理和菜单特效 11.1 背景...

    javascript获取函数名称、函数参数、对象属性名称的代码实例

    一、获取函数名称的3种实现方法实例1: 在js权威指南中看到的一个方法: Function.prototype.getName = function(){ return this.name || this.toString().match(/function\s*([^(]*)\(/)[1]} 实例2: 如果当前函数...

    AJAX基础概念、核心技术与典型案例(内涵动态实例)

    9.8.htm 可以进行四则混合运算的计算器 9.9.htm 打字效果 9.10.htm 实现图片的随机选择 9.11.htm 一个基本下拉菜单 9.12.htm 下拉菜单 9.13.htm 实现渐显效果的...

    《程序天下:JavaScript实例自学手册》光盘源码

    第1章 页面特效 ...1.2 页面自动最大化 1.3 页面自动刷新 1.4 页面的后退、刷新、前进 1.5保护网页源代码 ...22.15 用prototype实现JavaScript的继承 22.16 JavaScript制作哈希表 第23章 其他技巧及特效 23.1 ...

    JavaScript类的继承操作实例总结

    类的方法则被添加到prototype对象中。要创建该类的实例,只需结合关键字new调用这构造函数即可。 /* Class Person. */ function Person(name) { this.name = name; } Person.prototype.getName = function() { ...

    Goldfish:实例系统

    如果你想加载一个预先存在的地图作为你的原型,把它放在 plugins/Goldfish/prototypes/ 文件夹中,然后输入 '/goldfish prototype create [map name]'(你可以输入 'pt' 而不是 'prototype ' 或 'instance' 而不是 ...

    js使用Array.prototype.sort()对数组对象排序的方法

    本文实例讲述了js使用Array.prototype.sort()对数组对象排序的方法。分享给大家供大家参考。具体分析如下: 在讲对数组对象进行排序时,我们先来简单的了解一下Array.prototype.sort()。sort方法接受一个参数——...

    javascript 中的继承实例详解

    javascript 中的继承实例详解 阅读目录 原型链继承 ...原型链继承实现的本质是重写原型对象,代之以一个新类型的实例。代码如下: function SuperType() { this.property = true; } SuperType.prototype.

    js中的hasOwnProperty和isPrototypeOf方法使用实例

    isPrototypeOf:是用来判断要检查其原型链的对象是否存在于指定对象实例中,是则返回true,否则返回false。 代码如下:function siteAdmin(nickName,siteName){ this.nickName=nickName; this.siteName=siteName;}...

    jQuery实现移动端图片上传预览组件的方法分析

    这次则计划做成一个组件,可供前台、后台使用。 首先,我们先来捋一捋想要实现的功能: 预览 删除 压缩 上传到服务器 基本机构 这样,我们的组件结构就有了: ;!function(window, $, undefined){ function ...

    es6数组includes()用法实例分析

    Array.prototype.includes方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的includes方法类似。ES2016引入了该方法。 [1, 2, 3].includes(2) // true [1, 2, 3].includes(4) // true [1, 2, NaN]....

    设计模式之创建型模式

    Factory Method, Abstract Factory, Builder都需要一个额外的工厂类来负责实例化“易变对象”,而Prototype则是通过原型(一个特殊的工厂类)来克隆“易变对象”。 如果遇到“易变类”,起初的设计通常从...

    javascript 面向对象全新理练之原型继承

    首先创建一个父类的实例化对象,然后将该对象赋给子类的 prototype 属性。 这样,父类中的所有公有实例成员都会被子类继承。并且用 instanceof 运算符判断时,子类的实例化对象既属于子类,也属于父类。 然后将子类...

    vue逐行注释分析+40多m的vue源码程序流程图思维导图

    _ob___属性并且是不是Obersve实例化的,value是不是Vonde实例化的,如果不是则调用Obersve去把数据添加到观察者中,为数据添加__ob__属性,Obersve则调用defineReactive方法,该方法是连接Dep和wacther方法的一个...

    Prototype-Zoo

    feed()-如果动物醒着,则返回"NOM NOM NOM" akeUp()-将awake属性更改为true的方法 sleep()-一种将awake属性更改为false的方法 Zoo的每个实例应具有以下属性和方法: 名称 地点 状态-这应默认为"closed" ...

    javascript学习笔记.docx

    10) 每个类都有一个原型(prototype)对象,它具有一套属性和方法,用来共享一个类的方法和常量,还有一个constructor的属性引用构造函数。 11) JavaScript中面向对象的特性: a) 实例属性:在构造函数创建或初始化...

Global site tag (gtag.js) - Google Analytics