当前位置:编程学习 > JS >>

请问这个javascript js时间脚本应该如何修改然后能得到更好的兼容性?我会给您加很多分,如果您能帮我。

默认情况下浏览是正常的,可是如果用了google 翻译的话在火狐浏览器里会显示不太正常。(正常的情况是时间的小时和分钟是不动的,只有中间的冒号会按秒的间隔闪动)如果我用了google翻译的功能在firefox里分种会变到下面一行去,并且把下面的内容也挤下去了,整个右边侧栏都跳来跳去的,很烦人,所以想优化一下代码,希望有高手能指导我修改一下。先谢。为了方便参考我还附上了图片。代码如下: <strong> <b id="hours">21</b> <b id="maohao"> </b> <b id="minutes">29</b> </strong> <script language="javascript"> if ( typeof XMLHttpRequest == 'undefined' ) XMLHttpRequest = function() { return new ActiveXObject( navigator.userAgent.indexOf('MSIE 5') >= 0 ? 'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP' ); }; var xmlhttp = new XMLHttpRequest; xmlhttp.open("HEAD", ".", false); xmlhttp.send(null); var curDate = new Date; var offsetTime = curDate - Date.parse(xmlhttp.getResponseHeader("Date")); curDate.setTime(new Date - offsetTime); if (curDate.getHours().toString().length<2 ){var phours = "0"+curDate.getHours().toString();}else{phours = curDate.getHours().toString();} if (curDate.getMinutes().toString().length<2){var pminutes = "0"+curDate.getMinutes().toString();}else{pminutes = curDate.getMinutes()} var ptime = phours + pminutes; window.setInterval(function(){ document.getElementById("hours").innerHTML = phours; document.getElementById("minutes").innerHTML = pminutes; if (document.getElementById("maohao").innerHTML == " "){ document.getElementById("maohao").innerHTML = ":"; }else{ document.getElementById("maohao").innerHTML =" "; } },1000); </script>
答案:我改了下CSS属性,试一下呢,不知道可不可以,我这里没有firefox。
<html>
<head>
<style type="text/css">
div#aa{
    font-weight:bold;
}
</style>
</head>
<body>

<div id="aa">
<span id="hours">21</span>
<span id="maohao"></span>
<span id="minutes">29</span>
</div>
<script language="javascript">
    if ( typeof XMLHttpRequest == 'undefined' )
    XMLHttpRequest = function() {
    return new ActiveXObject(
    navigator.userAgent.indexOf('MSIE 5') >= 0 ?
    'Microsoft.XMLHTTP' : 'Msxml2.XMLHTTP' );
    };
    var xmlhttp = new XMLHttpRequest;
    xmlhttp.open("HEAD", ".", false);
    xmlhttp.send(null);
    var curDate = new Date;
    var offsetTime = curDate - Date.parse(xmlhttp.getResponseHeader("Date"));
    curDate.setTime(new Date - offsetTime);
    if (curDate.getHours().toString().length<2 ){var phours = "0"+curDate.getHours().toString();}else{phours = curDate.getHours().toString();}
    if (curDate.getMinutes().toString().length<2){var pminutes = "0"+curDate.getMinutes().toString();}else{pminutes = curDate.getMinutes()}
    var ptime = phours + pminutes;
    window.setInterval(function(){ 
        document.getElementById("hours").innerHTML =  phours; 
        document.getElementById("minutes").innerHTML =  pminutes;
        if (document.getElementById("maohao").innerHTML == " "){
        document.getElementById("maohao").innerHTML =  ":"; 
        }else{
            document.getElementById("maohao").innerHTML =" ";
        }
    },1000); 
</script>

</body></html>
其他:<b id="hours">21</b><b id="maohao"> </b><b id="minutes">29</b>

你把这一块写到一行里面去试试看?或者在CSS里面设定一个宽度

上一个:对编程有很深经验的师傅进来说下学 学会这些 SQL,C,C#或者JAVA,JAVASCRIPT,HTML。 数据库, 数据结构
下一个:javascript中的function用法

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,