javascript-菜鸟求js大神帮忙!!为什么我这段js代码只有第一个元素绑定了事件

问题描述

菜鸟求js大神帮忙!!为什么我这段js代码只有第一个元素绑定了事件
<script>
        window.onload=function(){
            var oParent=document.getElementById("aa");
            var boxs=oParent.getElementsByClassName("box");
            for(var i=0;i<boxs.length;i++){
                var imgs=boxs[i].getElementsByClassName("img");
                    for(var p=0;p<imgs.length;p++){
                    imgs[p].onmouseover=function(){
                        show();
                    }
                    imgs[p].onmouseout=function(){
                        unshow();
                    }
                }
            }
        }
        function show(){
            var txts=document.getElementsByClassName("txt");
                for(var j=0;j<txts.length;j++){
                    if(j==0){
                        txt[j].style.width=202+"px";
                        txt[j].style.height=202+"px";
                        txt[j].style.display="block";
                        txt[j].style.left=260+"px";
                    }else{
                        if(j%2!=0){
                            if(j<3){
                                txt[j].width=102+"px";
                                txt[j].height=102+"px";
                                txt[j].style.display="block";
                                txt[j].style.left=360+"px";
                            }else{
                                txt[j].width=102+"px";
                                txt[j].height=102+"px";
                                txt[j].style.display="block";
                                txt[j].style.left=360+"px";
                                txt[j].style.top=100+"px";
                            }

                        }else{
                            if(j<4){
                                txt[j].width=102+"px";
                                txt[j].height=102+"px";
                                txt[j].style.display="block";
                                txt[j].style.left=460+"px";
                            }else{//4
                                txt[j].width=102+"px";
                                txt[j].height=102+"px";
                                txt[j].style.display="block";
                                txt[j].style.left=460+"px";
                                txt[j].style.top=100+"px";
                            }
                        }
                        }
                }
        }
        function unshow(){
            var txts=document.getElementsByClassName("txt");
                for(var j=0;j<txts.length;j++){
                    txts[j].style.display="none";
                }
        }
        </script>

解决方案

__因为for先执行出来了p的值,然后下面的事件直接用到p的值,你需要做的事情是在每次onmouseover事件的时候每次执行的都是循环之后的值
你需要的是每次在做事件的时候把当前的index值存下,于是在你触发滑动事件的时候执行的是你当前存下的下标的那个元素对象了

解决方案二:

JS实现对DOM元素事件的绑定
JS事件调试 - 查找HTML元素绑定的事件以及绑定代码所在位置
js 事件绑定的方法

解决方案三:

className用在html5.个个浏览器好像还不通用吧最好别用

解决方案四:

试试其他的浏览器,看能不能用,

时间: 2024-09-19 08:59:58

javascript-菜鸟求js大神帮忙!!为什么我这段js代码只有第一个元素绑定了事件的相关文章

求各位大神帮忙css+html的代码、我还是一个新手

问题描述 求各位大神帮忙css+html的代码.我还是一个新手 就是在页面中有一个小三角形,然后点击三角形,它的下面就会弹出很多内容,这个在css+html中的代码怎么写? 解决方案 http://sc.chinaz.com/jiaoben/151010547490.htm 解决方案二: http://sc.chinaz.com/jiaoben/151010547490.htmhttp://www.17sucai.com/pins/tag/5547.html 解决方案三: 试试z-tree,很方

.net-sql列转行,求sql大神帮忙解决。

问题描述 sql列转行,求sql大神帮忙解决. 如题 姓名 部门 题目ID 题目答案 A 编辑部 1 tt A 编辑部 2 yy A 编辑部 3 hh B 测试部 1 tt B 测试部 3 cc 我想要这样的结果 姓名 部门 第一题 第二题 第三题 ...等 A 编辑部 tt yy hh B 测试部 tt NULL CC 解决方案 你的题目只有1,2,3还是不确定呢 解决方案二: SELECT distinct 姓名 ,部门 ,LEFT(UserList,LEN(UserList)-1) as

求各位大神帮忙做一下编译原理程序设计

问题描述 求各位大神帮忙做一下编译原理程序设计 1.设计词法分析器 设计各单词的状态转换图,并为不同的单词设计种别码.将词法分析器设计成供语 法分析器调用的子程序.功能包括:具备预处理功能.将不翻译的注释等符号先滤掉,只保留要翻译的符号串,即要求设计一个供词法分析调用的预处理子程序:能够拼出语言中的各个单词:http://ask.csdn.net/#将拼出的标识符填入符号表:返回(种别码, 属性值).2.目标代码生成器c. 能完成指定寄存器个数的情况下将一中间代码程序段翻译成汇编语言目标代码(汇

acm-ACM HDU1879继续畅通工程 提交RE.求各路大神帮忙看一下哪儿错了

问题描述 ACM HDU1879继续畅通工程 提交RE.求各路大神帮忙看一下哪儿错了 题目大意: 求最小生成树的权值和,并输出.已经修建的路(已经连上的边)是不会算入到最后的ANS中. Input 测试输入包含若干测试用例.每个测试用例的第1行给出村庄数目N ( 1< N < 100 ):随后的 N(N-1)/2 行对应村庄间道路的成本及修建状态,每行给4个正整数,分别是两个村庄的编号(从1编号到N),此两村庄间道路的成本,以及修建状态:1表示已建,0表示未建. 当N为0时输入结束. Samp

求各大神帮忙,有关html代码运行的小问题?

问题描述 求各大神帮忙,有关html代码运行的小问题? 我在用wordpad++写了html代码后,点击默认浏览器运行,却总是没有任何反应.我已经将默认浏览器改为谷歌浏览器了,只是默认的是搜狗,那个运行选项里面貌似没有搜狗的???? 解决方案 代码呢,没反应肯定是你脚本编写有问题了,或者使用到了null对象 f12打开谷歌开发工具看报什么错误 解决方案二: 那你这个代码是以什么格式保存的. 解决方案三: .html 文件保存格式为html 代码没错的话就是格式不对

网易新闻选择列表里面的cell移动怎么做,自己找了一个方法,但是不怎么会用, 求各位大神帮忙。

问题描述 网易新闻选择列表里面的cell移动怎么做,自己找了一个方法,但是不怎么会用, 求各位大神帮忙. -collectionView:(UICollectionView *)collectionView moveItemAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath{} 解决方案 看下帮助文档,有函数参数的

android-Android下面代码运行时候报错,仔细核对了控件名,没有问题,求各位大神帮忙看看

问题描述 Android下面代码运行时候报错,仔细核对了控件名,没有问题,求各位大神帮忙看看 button_user_alert.setOnClickListener(new OnClickListener() { View view = View.inflate(DialogComponentTest.this, R.layout.user_dialog, null); final EditText userName = (EditText) findViewById(R.id.edit_te

c语言-linux C 线程终止问题,着急,求各位大神帮忙

问题描述 linux C 线程终止问题,着急,求各位大神帮忙 include #include #include static int run = 1; static int retvalue; void *start_routine(void *arg){ int *runing = arg; printf("The child thread has been inited,the arg is: %dn",*runing); while(*runing){ printf("

java后台逻辑问题-求大神帮忙解释下这段代码。

问题描述 求大神帮忙解释下这段代码. 这是一个从表添加页面的代码.currentx是当前页数.我想问下 st st1 st2 st3是什么意思,就是split(:):这个方法我不是很清楚什么意思,还有下面的!ss.equals("t") t是什么. 传参什么的我晓得. @RequestMapping("/addProcess.do") public String addProcessMaintenance(String currentx, String ids, S