兼容的话题:inline和block

马克- to-win:马克 java社区:防盗版实名手机尾号: 73203。



例 2.2

<HTML>
<head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
</HEAD>
<script language="JavaScript">
 function swiDisplay(meO){
/* 马克-to-win:火狐和IE8中me.style.display开始时是没有值的,因为style="color:red;position:relative;" 如果是style="color:red;position:relative;display:inline",就有值了。但一旦赋值后,就会一直有值了*/
     meTry=document.getElementById('redText');
     alert("meTry===me is"+(meTry===meO));
     alert("arguments[0].id is"+ arguments[0].id);
/*为什么redText可以直接用,因为是id域*/
     alert("me===redText is"+(meO===redText));
     alert("me.style.display is"+meO.style.display );
     if (window.navigator.userAgent.indexOf("MSIE") >= 1)
     {
          alert("ie");
          alert("me.currentStyle.display is"+ meO.currentStyle.display);
          meO.style.display=meO.currentStyle.display;
     }
/*可以单步调试在firebug里看看window.navigator.userAgent*/
     else if (window.navigator.userAgent.indexOf("Firefox") >= 1)
     {
          alert("firefox");
          alert("window.getComputedStyle(me1).getPropertyValue('display') is"+ window.getComputedStyle(meO).getPropertyValue('display'));
          meO.style.display=window.getComputedStyle(meO).getPropertyValue('display');
     }
     if (meO.style.display=="block"){
/*注意下面的语句,可以变成style.display="",就是说inline
和“”效果是一样的, 这只是在set时,get时getComputedStyle
会返回inline*/
        meO.style.display="inline";
        alert("文本现在是:'inline'.");
     }
     else {
        if (meO.style.display=="inline"){
            meO.style.display="block";
            alert("文本现在是:'block'.");
        }
    }
  }
</script>


<div>在<span id="redText" onclick="swiDisplay(this)"
style="color:red;position:relative;">红色</span>文字上点击来查看效果.马克-to-win</div>