在做项目时,使用的浏览器是FireFox,可是后来项目需求中更改了浏览器的范围,需要在FireFox及IE下都要兼容。所以就造成了自己的困扰,在网上找了一番,有些费力,现将JSP中的自动刷新(setTimeOut)以及IE和FireFox下兼容获取div等标签的相关功能代码在此标记下。
功能:进入页面,自动刷新,点击页面stop refresh,停止自动刷新,stop refresh变成start refresh,自动刷新又重新开始。
功能实现:因为要求登陆界面后,就执行自动刷新功能,因此在页面中设置了一个隐藏字段,每次登陆页面时,查看隐藏字段的值,如果是start,就执行自动刷新,否则就停止。
以下代码是获取IE与FireFox下的兼容的获取div之间的值。
如:<div id='test'>get me!</div>要获取get me!
if(navigator.appName.indexOf("Explorer") > -1){
getValue=document.getElementById('test').innerText; //IE
} else {
getValue=document.getElementById('test').textContent;//FireFox
}
以下是一个小的页面代码:
注:1、setTimeOut(functionName,interval),这里的interval的单位是毫秒,页面中的interval是以秒来计算的。
2、setTimeOut实现不断刷新,就不是不断调用本身的过程。
3、页面中的interval是时间间隔,如果页面中不设置刷新的时间间隔,页面中默认的是三秒。
4、如果在Jquery下使用,可以直接将document.getElementById('aa').value换成$('#aa').val()使用。
5、此版本在IE或FireFox下均可用,兼容的获取问题看上面部分。
<html>
<title>test</title>
<body>
inteval:<input type="text" name="interval" id="interval" />
<input type="hidden" id="status" name="status" value="start"/>
<div id="state" value="stop refresh" onClick="change();">
stop refresh
</div>
</body>
<script>
var te;
var timeGet;
if(document.getElementById('status').value== 'start'){
changeTimeout();
}
function changeTimeout(){
timeGet = document.getElementById('interval').value;
timeout = timeGet * 1000;
if (!(timeout && timeout != '' && timeout != 0)) {
timeout = 3000;
}else{
timeout = timeout*1000;
}
if(document.getElementById('status').value == 'start'){
te = window.setTimeout('myrefresh()',timeout);
}else{
window.clearTimeout(te);
return;
}
}
function myrefresh(){
alert('refrsh,this area can add the action what you want!');
timeGet = document.getElementById('interval').value;
timeout = timeGet * 1000;
if (!(timeout && timeout != '' && timeout != 0)) {
timeout = 3000;
}
if(document.getElementById('status').value == 'start'){
te = window.setTimeout('myrefresh()',timeout);
}else{
window.clearTimeout(te);
return;
}
}
function change(){
if(navigator.appName.indexOf("Explorer") > -1){
statusRefresh=document.getElementById('state').innerText;
if (statusRefresh == 'stop refresh') {
document.getElementById('state').innerText='start refresh';
document.getElementById("status").value='stop';
clearTimeout(te);
} else {
document.getElementById('state').innerText='stop refresh';
document.getElementById("status").value='start';
myrefresh();
}
}else{
statusRefresh=document.getElementById('state').textContent;
if (statusRefresh == 'stop refresh') {
document.getElementById('state').textContent='start refresh';
document.getElementById("status").value='stop';
clearTimeout(te);
} else {
document.getElementById('state').textContent='stop refresh';
document.getElementById("status").value='start';
myrefresh();
}
}
}
</script>
</html>
分享到:
相关推荐
IE有时会忽视标准的style属性,而是使用专有的currentStyle属性来获取元素的样式,而Firefox使用window.getComputedStyle()。此外,对于某些CSS属性,如透明度,IE使用filter属性,Firefox则使用opacity。 IE和Fire...
为保持兼容,使用`element.currentStyle`(IE)和`window.getComputedStyle`(Firefox等)来获取元素的计算样式。 - IE6对透明度的支持不同于其他浏览器,可以使用`filter: alpha(opacity=xx)`来解决。 4. **JSON...
- IE对盒模型的理解与Firefox等其他浏览器不同,IE默认使用“怪异模式”(Quirks Mode),而Firefox采用标准模式。 - 对于透明度,IE使用`filter: alpha(opacity=xx)`,Firefox使用`opacity: xx%`。 5. **事件...
【标题】中的“纯js写的java搜索框,无数据库,IE,火狐兼容”意味着这是一个使用纯JavaScript编写的搜索功能,它不依赖任何后端数据库,并且可以在Internet Explorer(IE)和Firefox这两种不同的浏览器上正常运行...
在这个“js文字滚动(IE火狐兼容版)”中,我们主要探讨的是如何利用JavaScript来创建一个在不同浏览器上都能正常运行的文字滚动效果,包括Internet Explorer(IE)和Firefox等主流浏览器。 文字滚动是一种常见的网页...
标题与描述均提到了“Js图片广告轮换效果[支持ie7,ie8.firefox,ie6]”,这指向了一种使用JavaScript实现的图片轮播技术,特别强调了对旧版浏览器如IE6、IE7、IE8以及Firefox的支持。在现代Web开发中,虽然这些浏览器...
考虑到IE的兼容性,我们需要使用`setTimeout`和`clearTimeout`来控制滚动速度,并确保在IE中也能正常工作。 ```javascript var newsScroll = document.getElementById('news-scroll'); var marginTop = parseInt...
JavaScript中的`setTimeout()`和`clearTimeout()`是两个非常重要的函数,它们主要用于实现异步编程中的定时操作。在JavaScript中,由于其单线程执行的特性,`setTimeout()`和`clearTimeout()`提供了延迟执行代码和...
从给定的文件标题、描述、标签以及部分内容来看,本篇文章将详细解析如何实现页面在3秒后自动跳转,并确保这一功能在Internet Explorer(IE)和Firefox两大主流浏览器上均能正常工作。 ### 页面自动跳转的基本原理 ...
JavaScript中的setTimeout和clearTimeout是两个非常重要的计时器函数,它们允许我们在指定的时间后执行一段代码,也可以取消之前设定的计时器。 首先,setTimeout函数的基本用法是`setTimeout(code, delay)`,其中...
在本文中,我们将深入探讨如何针对IE8、Firefox、Safari等多浏览器环境创建一个无缝、流畅的图片滚动效果。 首先,我们需要理解不同浏览器对JavaScript和CSS的支持程度。IE8相对较老,不支持某些现代的JavaScript ...
JavaScript Option onclick 事件 IE 解决方案及兼容 IE 和 Firefox JavaScript 中的 Option onclick 事件是用户在Select 元素中选择一个选项时触发的事件,但是在 Internet Explorer(IE)浏览器中,该事件无法正确...
本文实例分析了js中setTimeout()与clearTimeout()用法。分享给大家供大家参考。具体分析如下: setTimeout() 方法用于在指定的毫秒数后调用函数或计算表达式. clearTimeout() 方法可取消由 setTimeout() 方法设置的 ...
setTimeout()从载入后延迟指定的时间去执行一个表达式或者是函数;仅执行一次 ;和window.clearTimeout一起使用.我在 代码如下:$(document).ready(function(){setTimout(test(),200); function test() { alert(1&#...
这个实现还考虑了浏览器兼容性问题,特别是IE和Firefox,这通常涉及到对不同浏览器之间差异的处理,如事件处理、CSS属性和DOM操作等。例如,`getElementsByTagName`方法在某些老版本的IE中可能不支持返回 live 集合...
本教程将详细介绍如何创建一个无缝兼容Firefox(火狐浏览器)和Internet Explorer(IE浏览器)的js跑马灯效果。 1. **JavaScript基础知识**: 在开始之前,我们需要对JavaScript的基础知识有一定了解。JavaScript...
`function()`中的代码展示了如何检测IE、Firefox、Chrome和Opera等浏览器的版本。例如,通过`ua.match(/msie ([\d.]+)/)`可以捕获到IE的版本号,其他浏览器类似。 4. **CSS前缀和特性支持** Chrome、Firefox和IE对...
### 解决IE、Firefox、Chrome、Safari浏览器中iframe显示高度自适应问题 在Web开发中,`iframe`(Inline Frame)元素常被用于嵌入另一个HTML文档到当前页面中,这种技术为开发者提供了极大的便利,例如加载广告、...
在这个项目中,我们关注的是一个简单的JS滚动新闻实现,它不仅支持早期的Internet Explorer 6(IE6),还兼容其他主流的现代浏览器。 在Web开发中,滚动新闻是一种常见的功能,它能够在页面上动态展示新闻标题或...
1. **延迟绑定**:由于Firefox可能在页面完全渲染之前没有准备好`resize`事件,我们可以使用`setTimeout`函数延迟绑定事件监听器,确保在DOM完全加载后执行。 ```javascript window.addEventListener('...