用 ActiveXObject("Microsoft.XMLHTTP")的方法获得;
示例:var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
用 XMLHttpRequest()的方法获得;
示例 var xmlhttp = new XMLHttpRequest();
兼容函数:
function getXMLhttpRequest() {
var xmlhttp = null;
if (document.all) {
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
} else {
xmlhttp = new XMLHttpRequest();
}
return xmlhttp;
}
用 obj.attachEvent()方法;
用 obj.addEventListener()方法;
于是,可以写一个兼容函数:
function setEvent(obj, eventname, functionname) {
if (document.all) {
return obj.attachEvent("on" + eventname, functionname);
} else {
return obj.addEventListener(eventname, functionname, false);
}
}
用 obj.currentStyle[attr]的方法;
用 getComputedStyle(obj, false)[attr];
兼容函数:
function getStyleTwo(obj, attr) {
return obj.currenStyle ? obj.currentStyle[attr] : getComputedStyle(obj, false)[attr];
}
问题症状:随便写几个标签,不加样式控制的情况下,各自的margin 和padding差异较大。
碰到频率:100%
解决方案:CSS里 * 备注:这个是最常见的也是最易解决的一个浏览器兼容性问题,几乎所有的CSS文件开头都会用通配符*来设置各个标签的内外补丁是0。
示例代码:
<div id="first"></div>
#first{
background-color: red;
width: 200px;
height: 200px;
float: left;
margin-left: 100px;
}
在IE和其余浏览器下会有不同的效果;
解决方案:在margin-left:100px;后面加 display: inline;
问题症状:IE6、7和遨游里这个标签的高度不受控制,超出自己设置的高度
碰到频率:60%
解决方案:给超出高度的标签设置overflow:hidden;或者设置行高line-height 小于你设置的高度。
示例代码:
#first{
background-color: red;
width: 200px;
height: 10px;
}
<div id="first"></div>
解决方案:在样式里面加上 overflow: hidden;的代码
解决方案:使用float属性为img布局
演示代码:
<img src="images/20664369-1_b.jpg" alt="" class="img">
<img src="images/20670230-1_b.jpg" alt="" class="img">
<img src="images/20679764-1_b.jpg" alt="" class="img">
.img{
background-color: red;
float: left;
}
解决方案:可以用JS代码来固定其位置;
示例代码:
#box{ width: 200px;
height: 200px;
background-color: red;
float:left; width:100px; margin:0 0 0 100px;}
<div id="box"></div>
解决方案:解决方案:display: inline---/使浮动忽略
演示代码:
#colortest
{border:20px solid #60A179 !important;
border:20px solid #00F;
padding: 30px;
width : 300px;}
<div id="colortest"></div>
这里有个新的东西if ie可以判断当前浏览器是否为ie浏览器
示例代码:
<style type="text/css">
#colortest
{width: 100px;height: 100px;background-color: red}
</style>
<!--[if IE]>
<style type="text/css">
#colortest
{width: 100px;height: 100px;background-color: blue}
</style>
<![endif]-->
<div id="colortest"></div>