代码 如下:
<ul>
<li><a onmouseOver="mouseOver()" onmouseOut="mouseOut()">a<img src="1.png" style="position:absolute; top:-149;x=1;" id="divP" /></a><li>
<li><a onmouseOver="mouseOver()" onmouseOut="mouseOut()">b<img src="1.png" style="position:absolute; top:-149;x=2;" id="divP1" /></a><li>
</ul>
<script type="text/javascript">
function mouseOver(){
var d=(divP1.style.x);
confirm(d);//用confirm 获取x的值为2 是对的
switch (d)//为什么switch 就获取不到
{
case 1:
  confirm("1");
  break
case 2:
  confirm("2");
  break
default:
  confirm("都不是");
}} 
</script>
 
为什么confirm获取的到 而switch 却获取不到

解决方案 »

  1.   

    divP1.style.x这样是获取不到的,你是不是搞错了哥们?
      

  2.   

    那么 confirm 为什么获取得到 显示结果也正确
      

  3.   

    我测试结果是confirm也取不到值,只是undefined
      

  4.   

    朋友你能加我一下qq吗 919905621 我需要这个答案 或者 要怎么获取html x属性里面的值
      

  5.   

    x不是style有效属性,不能这么干!<ul>
    <li><a onmouseOver="mouseOver()">a<img src="1.png" style="position:absolute; top:-149px" x="1" id="divP" /></a><li>
    </ul>
    <script type="text/javascript">
    function mouseOver(){
    var d=document.getElementById("divP").getAttribute("x");confirm(d);
    switch (parseInt(d))//过滤一下
    {
    case 1:
      confirm("1");
      break
    case 2:
      confirm("2");
      break
    default:
      confirm("都不是");
    }} 
    </script>
      

  6.   

    我测试了一下,不但x获取不到,而且top也获取不到,用IE调试工具看的top是“”,top可是有效属性啊!
      

  7.   

    你测试不到应该是编码问题,我已经试过firefox,IE8通过。top是这样获取的:alert(document.getElementById("divP").style.top);<ul>
    <li><a onmouseOver="mouseOver()">a<img src="1.png" style="position:absolute; top:-149px" x="1" id="divP" /></a><li>
    </ul>
    <script type="text/javascript">
    function mouseOver(){
    var d=document.getElementById("divP").getAttribute("x");
    alert(document.getElementById("divP").style.top);
    confirm(d);
    switch (parseInt(d))
    {
    case 1:
      confirm("1");
      break
    case 2:
      confirm("2");
      break
    default:
      confirm("nothing");
    }} 
    </script>以上不出现中文,可避免你编码错误