onmouseover 反应慢 一闪就过去 是为啥?_html/css_WEB-ITnose

php中文网
发布: 2016-06-21 09:46:26
原创
1476人浏览过

jquery color class

先附上代码 

<table  width="100%" border="0" cellspacing="1" cellpadding="0"  >                                <tr height="27" align="center" style="color:#fff;">                                        <td width="17%" height="35" bgcolor="#19283e"        class="th01">a</td>                                        <td width="33%" height="35" bgcolor="#19283e" class="th01">b</td>                                        <td width="10%" height="35" bgcolor="#19283e" class="th01">c</td>                                        <td width="33%" height="35" bgcolor="#19283e" class="th01">d</td>                                        <td width="8%" height="35" bgcolor="#19283e" class="th01">e</td>                                </tr>                                <tr>                                        <td colspan="7" height="25" align="left" >                                                <table height="26" width="100%" cellspacing="0" cellpadding="0" style="margin-top:10px; background:url(/images/main/img09.gif);">                                                        <tr>                                                                <td style="padding-left:8px;" width="21"><img  align='absmiddle' src='/UpFile/League/Icon_51001627082010.jpg'    style="max-width:90%"  style="max-width:90%"/ alt="onmouseover 反应慢 一闪就过去 是为啥?_html/css_WEB-ITnose" ></td>                                                                <td style="padding-left:7px;" class="txt09">a--- D1</td>                                                        </tr>                                                  </table>                                        </td>                                  </tr>                                            <tr>                                <!--        <td colspan="5" align="center" class="txt10" style="padding-left:4px;">                    <table width="100%" id="box-table-a">                    <tr>-->                                        <td  align="center" style="padding-left:4px;">09/29 11:00</td>                                        <td  align="center"  id="id1_415520" class="list_td"  onclick="addCart('ggu12',415520,1,'SMP','2013-09-29 11:00/sh:ke/SMP');"  onMouseover="highlight(this, true);" onMouseOut="highlight(this, false);" >                                <span style="float:left;">sh</span>                                <span style="float:right;">205</span></td>                                        <td  align="center" id="id0_415520"         onMouseover="highlight(this, true);" onMouseOut="highlight(this, false);"                                         class="list_td"        onclick="addCart('ggu12','415520',0,'SMP','2013-09-29 11:00/sh:ke/SMP');"        >                                320                                                                        </td>                                        <td  class="list_td" id="id2_415520" class="list_td" onclick="addCart('ggu12',415520,2,'SMP','2013-09-29 11:00/sh:ke/SMP');" onMouseOver="highlight(this, true);" onMouseOut="highlight(this, false);"><span style="float:left;">3030</span><span style="float:right;">ke</span></td>                                        <td  align="center"  style="background-color:#2b2b2b; cursor:arow;"><font color="#FFCC00">ppl</font></td>                        <!--        </tr>                                </table>                                </td>-->                        </tr></table><sript>function highlight(obj, isHover) {        var cssClass = obj.className;        //alert(cssClass);        if(cssClass == "" || cssClass == "MouseOver") {                obj.className = isHover ? "MouseOver" : "";                return;    }    var color = "#000000";    var oddColor = "#000000";                        if(isHover) {                //obj.style.backgroundImage = "url(/images/main/bg19.gif)";                //alert(cssClass);                obj.style.backgroundColor = "#FFCC00";                obj.style.borderColor = "#ffe066 #907608 #907608 #ffe066";        } else {            color = "";            oddColor = "";                obj.style.backgroundColor = "";                obj.style.borderColor = "";                //obj.style.backgroundImage = "url(/images/main/bg09.gif)";    }        obj.style.color = color;                                         // set color of this element        var tds = obj.getElementsByTagName("TD");        // and all child TDs        for (var i = 0; i < tds.length; i++) {            if (tds[i].className == "odd") {                        tds[i].style.color = color;            } else {                tds[i].style.color = color;            }        }                }</script>
登录后复制




以上代码里 tr是循环出来的。 我附上的是其中一个table的数据  

问题是td里的 onmouseover/out 效果 反应慢 鼠标上去了有的不会变效果 在一个 td里来回一下才出现效果  有时还是一闪就没了。 不知道是什么原因 。有没有人知道?    困惑了 2天  在不行 高手请求以上代码 改为 jquery的 也行  jquery 替代 onmouseover 效果。

回复讨论(解决方案)

<table  width="100%" border="0" cellspacing="1" cellpadding="0"  >                                <tr height="27" align="center" style="color:#fff;">                                        <td width="17%" height="35" bgcolor="#19283e"        class="th01">a</td>                                        <td width="33%" height="35" bgcolor="#19283e" class="th01">b</td>                                        <td width="10%" height="35" bgcolor="#19283e" class="th01">c</td>                                        <td width="33%" height="35" bgcolor="#19283e" class="th01">d</td>                                        <td width="8%" height="35" bgcolor="#19283e" class="th01">e</td>                                </tr>                                <tr>                                        <td colspan="7" height="25" align="left" >                                                <table height="26" width="100%" cellspacing="0" cellpadding="0" style="margin-top:10px; background:url(/images/main/img09.gif);">                                                        <tr>                                                                <td style="padding-left:8px;" width="21"><img  align='absmiddle' src='/UpFile/League/Icon_51001627082010.jpg'    style="max-width:90%"  style="max-width:90%"/ alt="onmouseover 反应慢 一闪就过去 是为啥?_html/css_WEB-ITnose" ></td>                                                                <td style="padding-left:7px;" class="txt09">a--- D1</td>                                                        </tr>                                                  </table>                                        </td>                                  </tr>                                            <tr>                                <!--        <td colspan="5" align="center" class="txt10" style="padding-left:4px;">                    <table width="100%" id="box-table-a">                    <tr>-->                                        <td  align="center" style="padding-left:4px;">09/29 11:00</td>                                        <td  align="center"  id="id1_415520" class="list_td"  onclick="addCart('ggu12',415520,1,'SMP','2013-09-29 11:00/sh:ke/SMP');"  onMouseover="highlight(this, true);" onMouseOut="highlight(this, false);" >                                <span style="float:left;">sh</span>                                <span style="float:right;">205</span></td>                                        <td  align="center" id="id0_415520"         onMouseover="highlight(this, true);" onMouseOut="highlight(this, false);"                                         class="list_td"        onclick="addCart('ggu12','415520',0,'SMP','2013-09-29 11:00/sh:ke/SMP');"        >                                320                                                                        </td>                                        <td  class="list_td" id="id2_415520" class="list_td" onclick="addCart('ggu12',415520,2,'SMP','2013-09-29 11:00/sh:ke/SMP');" onMouseOver="highlight(this, true);" onMouseOut="highlight(this, false);"><span style="float:left;">3030</span><span style="float:right;">ke</span></td>                                        <td  align="center"  style="background-color:#2b2b2b; cursor:arow;"><font color="#FFCC00">ppl</font></td>                        <!--        </tr>                                </table>                                </td>-->                        </tr></table><script tepe="javascrit/text">function highlight(obj, isHover) {        var cssClass = obj.className;        //alert(cssClass);        if(cssClass == "" || cssClass == "MouseOver") {                obj.className = isHover ? "MouseOver" : "";                return;    }    var color = "#000000";    var oddColor = "#000000";                        if(isHover) {                //obj.style.backgroundImage = "url(/images/main/bg19.gif)";                //alert(cssClass);                obj.style.backgroundColor = "#FFCC00";                obj.style.borderColor = "#ffe066 #907608 #907608 #ffe066";        } else {            color = "";            oddColor = "";                obj.style.backgroundColor = "";                obj.style.borderColor = "";                //obj.style.backgroundImage = "url(/images/main/bg09.gif)";    }        obj.style.color = color;                                         // set color of this element        var tds = obj.getElementsByTagName("td");        // and all child TDs        for (var i = 0; i < tds.length; i++) {            if (tds[i].className == "odd") {                        tds[i].style.color = color;            } else {                tds[i].style.color = color;            }        }                }</script>
登录后复制

试试吧

2楼 没什么改变啊 就是  <script> 这个?? 这个是 js文件里的 调用的。 <br /> <br /> 和这个没关系吧。。。。 </script>

发现  单独拿出来 html 保存的话 不卡 很正常。。   在 asp文件里循环输出的时候就 出毛病 。。

这个估计你的td太多了

请问这个效果 用 jquery 如何实现呢?

事件冒泡吧.. 改用jquery的 mosueEnter mouseLeave

LZ使用jquery实现的话,可以参照下面的:

var table = $("#table1");  // 假设table的id为table1function CreateTr() {    var tr = $("<tr></tr>");    var td = GetTd();    $(td).appendTo(tr);    $(tr).appendTo(table);}function GetTd() {    var td = $("<td></td>");    $(td).bind("mouseenter", function() {        // logic    });    $(td).bind("mouseleave", function() {        // logic    });    return td;}
登录后复制

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号