首页 新闻 会员 周边

js中OnClik事件失效问题

0
悬赏园豆:20 [已解决问题] 解决于 2015-08-13 11:46

做了一个功能,一个搜索框,根据输入的条件,查询数据,结果显示方式是一个悬浮框,下面是生成html的代码

 friendsHtml += '<div class="imgHand divInfo" id="user' + item.Openid + '" onclick="editTitleAndStyle(this,\'' + item.Openid + '\',2)" >';
                        friendsHtml += '<div class="avatar" style="float:left;" onclick="test(1)"><img src="' + item.Headimgurl + '" onclick="test(2)" class="img" />';
                        friendsHtml += '</div>';
                        friendsHtml += '<div class="info" style=""  onclick="test(3)">';
                        friendsHtml += '<span class="nickname_text" onclick="test(4)">' + (item.Name == null ? item.Nickname : item.Name) + '</span>';
                        friendsHtml += '</div>';
                        friendsHtml += '<div style="clear:both;"></div>';
                        friendsHtml += '</div>';

这个是样式

.divInfo {
    padding: 12px 18px 11px 20px;
    border-bottom: 1px solid #292C33;
    cursor: pointer;
    position: relative;
}

/*昵称文本样式*/
.nickname_text {
    color: #FFF;
    display: inline;
    vertical-align: top;
    overflow: hidden;
    white-space: nowrap;
    word-wrap: normal;
    font-weight: 400;
    font-size: 13px;
    line-height: 20px;
    margin-top: 10px;
    margin-left: 10px;
}

.info {
    float: left;
}

.avatar {
    float: left;
    
    position: relative;
}

现在的问题是搜索出的结果除了第一个点击有反应,剩下的只有点击nickname才有反应,点击其他地方无任何反应。一直在纠结这个问题。只要把class="info"这个div的float:left;去掉就行了,但是去掉之后,效果就没了。

祁临芯的主页 祁临芯 | 菜鸟二级 | 园豆:251
提问于:2015-08-13 10:10
< >
分享
最佳答案
0

就你你描述说明跟你的样式也有一定的关系,你审查元素看下样式效果或者是在控制台看下是否有js错误!

收获园豆:20
Jeffcky | 老鸟四级 |园豆:2789 | 2015-08-13 10:34

js无错误,因为点第一个是可以点的,就是下面的不行,换成<div onclick="test()"><img /> nickname</div>  也不行。。。点击头像一点动静都没,点击nickname倒是有反应了

祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:35

@祁临芯: 就这么口头描述,也就只能凭主观来判断基本可能的错误了!你要是方便的话,我远程调试下,看能不能找到错误所在!

Jeffcky | 园豆:2789 (老鸟四级) | 2015-08-13 10:38

@Recluse_Xpy: qq多少?

祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:38

@祁临芯: 2752154844

Jeffcky | 园豆:2789 (老鸟四级) | 2015-08-13 10:38

@祁临芯: 我qq是894708097 验证密码是若茶

祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:39
其他回答(3)
0

你生成的HTML的页面源码代码是什么?浏览器F12调试

稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-13 10:18

调试了,就是点击之后,压根不触发任何事件,就算把事件写进子级的div里面都不行。

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:30

@祁临芯: 你这里不是有test(1)什么的方法,看下他进入这些方法了没有

支持(1) 反对(0) 稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-13 10:36

@稳稳的河: 除了第一个,后面的都不进去啊。。。

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:36
0

事件肯定没有失效,就看你是不是点击到了。

幻天芒 | 园豆:37175 (高人七级) | 2015-08-13 10:44

不知道为啥点不上

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:45

@祁临芯: 建议对每个元素设置不同的背景色,然后再测试点击。

支持(0) 反对(0) 幻天芒 | 园豆:37175 (高人七级) | 2015-08-13 10:56

@幻天芒: 好

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 10:57
0

感谢各位大大提示,和2楼搞了大半小时,搞定了。

祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 11:46

啥子问题?

支持(0) 反对(0) 稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-13 12:18

@稳稳的河: 貌似现在才找到真正的问题,当输入框失去焦点的时候,我特么的把悬浮框隐藏掉了。。。

支持(0) 反对(0) 祁临芯 | 园豆:251 (菜鸟二级) | 2015-08-13 12:25

@祁临芯: 汗 ,所以点不到了。。。。。。。。。。

支持(0) 反对(0) 稳稳的河 | 园豆:4216 (老鸟四级) | 2015-08-13 12:27
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册