DOM元素点击失效问题

来源:互联网 发布:dota2饰品交易知乎 编辑:程序博客网 时间:2024/06/01 10:32

在为DOM添加事件处理函数的时候,出现了一个DOM元素无法点击的问题,
Chrome调试截图
虽然class=”share”的元素的img类型的子孙元素中的第一个元素已经设置了鼠标点击的事件处理函数,但是这个事件处理函数并不能被触发,也就是点击这个图片的时候没有反应。
第一个原因:由于需要注册事件处理函数的img元素是放在header标签里面的,但是header标签如果不进行手动设置height,那么header标签的高度为0px,所以会导致点击不到header中的元素。

这里写图片描述

<body>    <div class="main">        <div class="home-page">            <header>                <div class="share">                    <img src="assets/img/sharethis_icon.png">                    <img src="assets/img/facebook_icon.png">                    <img src="assets/img/friendcircle_icon.png">                    <img  src="assets/img/twitter_icon.png">                    <img  src="assets/img/yahoo_icon.png">                </div>    ........</body>

第二个原因:由于我的页面中间有一个很大的标题,而为了让这个标题居中,我采用了如下CSS样式使其居中:

h1 {    text-align: center;    margin: 0;    position: absolute;    top: 0;    bottom: 0;    left: 0;    right: 0;    padding-top: 15%;}

这样的居中方式导致了这个h1标签占据了header原本的位置,对header元素进行了覆盖,所以点击header中的img元素的时候,实际上是点击了h1元素,解决办法可以将padding-top改为margin-top即可,这样就可以点击到需要的img元素了。

第二个问题我使用了一个点击页面,可以返回自己点击的元素的标签名的javaScript函数来进行检测的,这个函数比较实用。

function show_element(e){          if(!e){            var e = window.event;          }          //获取事件点击元素          var targ = e.target;          //获取元素名称          var tname = targ.tagName;          alert(tname);  } 
0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 满月宝宝脾气急怎么办 多颗牙齿缺失怎么办 孩子没有学习动力怎么办 裤子穿着往上跑怎么办 伤囗发炎了怎么办 玩派派背包食物不足怎么办 80岁老人植物人怎么办 steam账户创不起怎么办 小孩读书没有居住证怎么办 小孩上学没有准生证怎么办 小学在外地初中怎么办 小孩上学没准生证怎么办 没结婚出生证明怎么办 异地上高中高考怎么办 高中去外地上学怎么办 农村在城里上学怎么办? 父母没钱不工作怎么办 qq被家长偷看怎么办 孩子考差了怎么办 父母翻看qq记录怎么办 孩子qq屏蔽父母怎么办 杜鹃花老叶脱落怎么办 父母对孩子不好怎么办 家长看孩子手机怎么办 六年级打四年级学生怎么办 儿童被家长打怎么办 老师打孩子耳光怎么办 孩子动手打母亲怎么办 小孩被老师体罚怎么办 儿子跟父母对打怎么办 两个孩子争东西怎么办 大人吵架小孩该怎么办 小孩老爱顶嘴怎么办 孩子老爱顶嘴怎么办 孩子不愿分房睡怎么办 孩子不愿意去补课怎么办 高中孩子不愿意补课怎么办 孩子协调性不好怎么办 孩子暑假不愿意补课怎么办 话唠的孩子怎么办 孩孑不做作业怎么办