<td width="259" height="30" class="style1" onmouseover="MM_showHideLayers('Layer1','','show')" onmouseout="MM_showHideLayers('Layer1','','hide')"><div align="center"><a href="#" class="title2">about Company</a></div></td>我是在一个td上加的onmouseout响应,用Dreamweaver自动生成的JS<script type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}//-->
</script>然而在Firefox下就能正常响应,只有离开了td单元格范围,才响应onmouseout而在ie下就不正常,只要一离开td内的文字about Company,onmouseout就开始响应!!!

解决方案 »

  1.   

    MS-IE与Firefox两个浏览器的内核完全不一样,对脚本的支持与响应的确存在不同的地方,按道理说,对TD对象添加的onmouseout事件,的确应该在作用于TD上。我分析了你的代码,觉的可能是你的<div align="center"><a href="#" class="title2">about Company</a></div>这段脚本有问题。DIV是可能显示时超出TD的范围了,两种浏览器显示的模式不一致造成的
      

  2.   

    不,我实验了是
    td中的class="style1"问题,把这个去了就能正常响应范围。但我需要在td中加style以实现FILTER: progid:DXImageTransform.Microsoft.DropShadow(color=#000000,offX=1,offY=1,positives=true);这个滤镜效果,这个滤镜加在div或者a标签里不管用