导航:首页 > 编程语言 > js手机的点击事件失效

js手机的点击事件失效

发布时间:2023-11-12 17:34:32

js动态绑定onclick事件,事件点击多时无响应

onclick事件绑定只对dom中存在的元素有效,对于后来新增加的元素是监测不到,所以绑定事件失败.

㈡ js为什么点击事件无效

事件里你先console.log('this.style.backgroundColor')打印下是什么,在确定判断条件对不对

㈢ js点击事件不完全生效

不生效可能是你没有阻止事件冒泡。
当点击取消按钮的时候,会触发点击id为name的元素,所以重新加上了带有show的类名。
应该在取消的按钮点击事件参数加上e,函数内加上“e.stopPropagation()”阻止事件冒泡。

javascript 为什么按钮的onclick事件不触发 按了没反应

主要是你写的位置是script里边还是行内还是body,herd和body加script标签,有时候浏览器也会出现错误,先版刷新一下如果还权不行就重新打开!如果单纯的练习的话可以一个个试试获取input标签name和ID正常来说你这只要有script标签语法是不会报错,另外不知道为什么你的单标记标签会多出来一个/出来,可以去掉试试!

㈤ 移动端JS父层Touch事件用了冒泡,子层onclick事件不生效

移动端JS父层Touch事件用了冒泡,子层onclick事件不生效,这时候子元素就要用委托来绑定事件啊,不能直接在子元素上onclick,如$("#mydiv").on("touchend", "img", func(this))。
可以参照这篇文章(我找的别人的)http://blog.csdn.net/cysear/article/details/72302977

㈥ 我自己写的JS函数:为什么无法响应点击事件呢

onload = *而不是()=*

在有些浏览器,脚本是和正文分开加载的,你这个document.getElementsByTagName("input");返回有可能没有值,

首先写一个简单的ready函数

//只接受函数作为参数,每调用一次,存一个函数,当页面载完,一次自动执行
//ready(yourfunction)
varready=(function(){
varisReady=false,
funList=[];
functionr(fn){
typeoffn!=="function"||(isReady?fn():funList.push(fn))
}
functionreadyCall(){
isReady=true;
while(funList.length){
funList.shift()()
}
}
if(document.addEventListener){
document.addEventListener("DOMContentLoaded",function(){
document.removeEventListener("DOMContentLoaded",arguments.callee,false);
readyCall()
},false)
}elseif(document.attachEvent){
document.attachEvent("onreadystatechange",function(){
if(document.readyState==="complete"){
document.detachEvent("onreadystatechange",arguments.callee);
readyCall()
}
})
}
returnr
}
())

再写一个绑定事件的函数

/**
*bind(target,eventname,eventfunction)
*bind(控件,事件名称(如"click"不带on),事件函数)
*注意,事件函数,就算在ie,也会强推一个event作为第一个参数
*为了兼容旧版本浏览器,preventDefaultpreventDefault简单的写了些,不够完
*还望海涵
*/
varbind=function(el,name,fn){
if(el.addEventListener){
el.addEventListener(name,fn);
}else{
name="on"+name;
if(el.attachEvent){
el.attachEvent(name,function(){
varargs=Array.prototype.slice.call(arguments),ret=true;
if(window.event){
args.unshift(window.event);
if(!event.preventDefault)
event.preventDefault=function(){
ret=false;
};
if(!event.stopPropagation)
event.stopPropagation=function(){
event.cancelBubble=true;
};
}
fn.apply(this,args);
returnret;
});
}else{
varold=el[name],noFunc=typeofold!=="function",noList=noFunc||!old.list,call;
if(noList){
call=el[name]=function(event){
varlist=call.list,l=list.length,
args=Array.prototype.slice.call(arguments),ie=!!window.event,
ret=true,run=true;
if(!event.preventDefault)
event.preventDefault=function(){
ret=false;
};
if(!event.stopPropagation)
event.stopPropagation=function(){
run=false;
};
if(ie)args.unshift(event);
while(l--&&run)
list[i].apply(this,args);
returnret;
};
call.list=[];
if(!noFunc)call.list.push(old);
}
call.list.push(fn);
}
}
};

时间关系,没写解绑函数

再来一个寻找控件的函数

/**
*trans("#id")trans(".class")trans("$name")trans("tagName")
*/
functiontrans(el){
varc;
c=el.charAt(0);
c=c.match(/^[#.$]/)?c:"";
returntypeofel==="object"&&
Object.prototype.toString.call(el).match(/[objectHTML.*Element]/)?el
:typeofel==="string"&&
(el=(document[
["getElementById","getElementsByClassName","getElementsByName","getElementsByTagName"]
[{"#":0,".":1,"$":2,"":3}[c]]])(el.substring(c?1:0)),c?[el]:el.length)?el:null;
}

然后再轻松的绑定事件

ready(function(){
varfruit=trans("input");
//初始化
for(vari=0;i<fruit.length-4;i=i+2)
fruit[i+1].disabled="disabled";

//添加事件
for(vari=0;i<fruit.length-4;i=i+2)

bind(fruit[i],"click",(function(fruit,value){
returnfunction(event){
if(fruit.id===value)fruit.removeAttribute("disabled");
};
}(fruit[i],fruit[i].value)));//注意,这里直接把fruit[i].value,和fruit[i]传给事件闭包,就不容易和其他变量混淆了。
});
阅读全文

与js手机的点击事件失效相关的资料

热点内容
如何保存vba中的数据库密码 浏览:22
acer平板为什么微信打不开 浏览:699
国外政府app 浏览:118
龙之谷如何玩转90版本 浏览:486
如何进入今日头条app发新闻 浏览:561
iphone视频未知错误 浏览:230
哪些学科为工具学科 浏览:228
javachar与运算 浏览:347
如何在cad文件中插入源泉插件 浏览:362
存储路径无权限或文件名不合规 浏览:496
iphone4s怎么删除文件 浏览:545
中公教师文件名叫什么 浏览:844
word2010怎么从任意页设置页码 浏览:622
cass怎么校正数据 浏览:612
linux查看所有管理员 浏览:2
u盘文件解压缩失败如何修复 浏览:566
黑苹果怎么显卡才4m 浏览:270
方程式0day图形化工具 浏览:961
电脑装文件很慢 浏览:958
网络标号怎么用 浏览:352

友情链接