JS动态给对象添加事件的简单方法

JS动态给对象添加事件的简单方法,第1张

WEB项目中,我们常常会碰到要动态对相应的对象添加事件,如下,有id="txtPrice"的文本框控件:

<div>

<input

type="text"

id="txtPrice"

name

=

"txtPrice"

value

=

"0"/>

<div>

现在我们为其动慧让态添加一事件,JS核心代码如下:

document.getElementById("txtPrice").attachEvent('onblur',

function

(){alert('添加事件成功!')})

【补充】

有时亮喊候为了实现不同浏览器之前的兼容,我们会这样写:

Code

highlighting

produced

by

Actipro

CodeHighlighter

(freeware)http://www.CodeHighlighter.com/-->1

if(window.attachEvent)

{

document.getElementById("txtPrice").attachEvent('onblur',

function

(){alert('添加事件成功!')})

}

else

{

document.getElementById("txtPrice").addEventListener('onblur',

function

(){alert('添加事件成功!')},false)

}

以上这篇JS动态给对象添加事件的简单方法就是小编分享给大家的敬碧野全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

添加属性用setAttribute()方法,可以传入两个参数,第一个是属性名肆脊称,第二个是要设置的属性值

var li = document.getElementsByTagName('li')[0]

//设置 御改li 属性,如 data-falg,设置为镇雹判true

li.setAttribute("data-falg", "true")

也可以获取属性用getAttribute(),传入一个参数,是想获取的属性名称,返回的是该属性的值

简单的补个例子上,希望楼主能把addMethods的第二个参数大致有几种情况写清楚。

我再把我轮知慧的答案补充完整

//判断类型的方法

var isType = function(object) {

  return Object.prototype.toString.call(object)

    .match(/^\[object\s(.*)\]$/)[1]

}

var addMethods = function(obj, arr){

    if(isType(obj) !== 'Object'){

        return alert('第一个参数必须是对象!')

 猛此   }

  腊答  //TODO

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11973791.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-20
下一篇 2023-05-20

发表评论

登录后才能评论

评论列表(0条)

保存