js在函数中注册事件(微信小程序中如何给UI控件绑定点击事件函数)

本文目录
微信小程序中如何给UI控件绑定点击事件函数
微信小程序中如何给UI控件绑定点击事件函数?
A.在wxml文件中,为UI控件的view标签添加bindtap属性,属性值设置为要绑定的事件函数,该函数在js文件中定义并实现
B.在js文件中,直接编写bindtap函数,并在函数中调用要绑定的事件函数,该函数也在js文件中定义并实现
C.在wxml文件中,为UI控件添加onClick属性,属性值设置为要绑定的事件函数,该函数在js文件中定义并实现
D.在js文件中,直接编写onClick函数,并在函数中调用要绑定的事件函数,该函数也在js文件中定义并实现
正确答案:A
js 问题事件与函数问题
这传入的是一个MouseEvent事件,event代表传入事件,而当前事件是onmousedown,所以传入的是一个MouseEvent事件。
下面是你这要做的效果的代码:
《!DOCTYPE html》
《html lang="en"》
《head》
《meta charset="UTF-8"》
《title》Title《/title》
《/head》
《body》
《div style="width: 300px;height: 300px;border: 1px solid black;" onmousedown="show_position(event)"》《/div》
《div》《/div》
《script》
function show_position(e) {
// console.log(e);
let x = e.offsetX;
let y = e.offsetY;
let div = `
《div》
《span》横坐标${x}纵坐标${y}《/span》
《/div》
`;
document.getElementsByTagName("div").innerHTML = div;
}
《/script》
《/body》
《/html》
效果如图:
关于js中使用attachEvent函数注册的处理程序中的this值
//这是IE下的一个著名的bug
//绑定事件想解决this的指向问题,请用下边的自定义方法,事件处理方法中this始终指向目标元素
var addEvent = (function(){
if( d.addEventListener ){
return function(el, type, fn){
var _len = el.length;
if( _len ){
for(var i=0; i《_len; i++){
addEvent(el, type, fn);
}
}else{
el.addEventListener(type, fn, false);
}
};
}else if( d.attachEvent ){
return function(el, type, fn){
var _len = el.length;
if( _len ){
for(var i=0; i《_len; i++){
addEvent(el, type, fn);
}
}else{
el.attachEvent(’on’ + type, function(){
return fn.call(el, w.event);
});
}
};
}
})();
js注册事件,函数带有参数,如何写
呵呵,楼主还不明白。
①首先在加按钮到div中时,就可以把事件一并写进去,就像楼上说的,也是根据楼主的意思,最可行的办法
②楼主在另外注册事件时,函数调用的i是for循环中的变量i本身,并是不i的值,比如goodBye是执行alert的话,也就是说你的事件是把i变量的值alert出来。而当你真正触发事件时,你的i是多少就会alert多少(经过循环后i=10);自然就不是楼主的本意了,你想在循环中把当前的i值作为事件中的函数的参数的话,(理论上是需要把i作为事件的参数传入,然后在事件的函数体内做调用才行),可是事件本身是不传参的,所以没办法。
建议实现:
《script language="javascript"》
var str="";
for(i=0;i《10;i++){
str=str+"《input type=’button’ id=’butt"+i+"’ onclick=’goodBye("+i+");’/》";
}
document.getElementById("div").innerHTML=str;
《/script》

更多文章:
全球新冠肺炎疫情背景下航运发展(盐田港复苏日志:半年历劫从“低谷”到“爆仓” 疫情之后巨轮如何越洋航行)
2026年9月7日 17:10
matlab求解带字母参数方程组(我想matlab求一个关于x,y的方程组 ab c d f e h m n 都是参数)
2026年9月7日 16:30
oracle中的循环语句(下面哪个不是oracle程序设计中的循环语句 a for)
2026年9月7日 15:30
电脑里2个系统怎么删除一个(电脑开机显示有两个系统,如何删除一个)
2026年9月7日 12:20
scrollthrough意思(“scroll”是什么意思)
2026年9月7日 08:00
怎么激活keygen(注册机如何激活cad2008一个简单激活cad2008的方法)
2026年9月7日 06:30
vba编写excel插件(excel vba中能否动态创建控件)
2026年9月7日 04:40





