当前位置: 代码迷 >> Web前端 >> 浏览器兼容的有关问题
  详细解决方案

浏览器兼容的有关问题

热度:2   发布时间:2012-09-28 00:03:35.0
浏览器兼容的问题

为了解决页面的数据是对齐的,最好是把数据放在同一个table中。为了解决在不同的浏览器中table嵌套table中出现的页面异常,因此可以在第一个table中添加tbody标签,这个标签相当于一个容器,但是不会占用内容的显示,实现了不必使用多个table嵌套而产生的兼容性问题。


学会怎么使用<tbody>标签?
在HTML中,<tbody>相当于一个容器,用于table中添加子table标签

<table>
	<tr>
		<td>标题</td>
	</tr>
	<tbody id="list"></tbody>
</table>

可以使用jquery把信息列表放在<tbody>这个容器中,这样就只用了一个table,保证了“标题”与“列表内容”对齐
注意:如果希望tbody中的内容显示出来,就必须在tbody标签中添加样式,否则是显示不出来内容的?

?

?

关于浏览器记录操作历史记录的解决办法(以及遇到的问题)?
一般使用了超级链接之后,浏览器默认会记录这些地址,那么用户可以利用会退的办法进入到后台页面,当然这种情况我们是不允许的,所以使用window.location.replace(URL)这个办法,浏览器不会记录操作步骤,但是firefox浏览器只识别<a>这个标签就会记录操作历史,不管是否有链接地址或者是方法实现,这个也算是firefox的一个bug;为了解决firefox这个bug,对<a>标签给出的一个值返回false,表示链接失败,这样firefox将不会记录操作历史。

<a href="#" onclick="return refresh('sdsettings.htm');">

function refresh(url)
{
    window.location.replace(url);
    return false;
}

?refresh()方法最后返回的是一个false的值,这样浏览器以为链接失败,这样就不会记录这个操作过程

?

?

浏览器是否会限制上传文件大小?

1、在IE、Opera、google浏览器中是不允许上传2G以上的文件,它会把文件的大小标记为一个负数,这样则会很容易被杀毒软件拦截,误认为是恶意攻击,但在Firefox和Safari浏览器中则支2G以上的文件上传,如果计算机内存较小,也很容易导致浏览器挂死(内存溢出)的情况
2、如果发送的请求被杀毒软件拦截,server则无法获取用户的请求,也无法反馈文件的大小,规避的方法就是关掉杀毒软件

?

使用js查看浏览器的版本及相关的详细信息?
var agent = navigator.userAgent.toLowerCase();
用上面这种方法能够得到浏览器的详细信息,比使用jquery更为准确,对解决浏览器自身不兼容的问题起到重要作用,对chrome(谷歌)浏览器――内核是firefox和safari两者的合并,根本用jquery判断不出来,所以使用这种方式是很好的。

?

如果在使用JS要得到“时间-年”,要考虑浏览器兼容的问题?
FF:getYear()? 返回的是“当前时间-1900”的值
IE无此问题
解决办法:全部使用getFullYear()或者是getUTCFullYear()方法

  相关解决方案