不同平台上的Javascript

不同平台上的Javascript,javascript,windows,linux,Javascript,Windows,Linux,我有一个简单的js脚本,可以水平滚动图像 奇怪的是,它在windows上的CPU负载高达100%,而在linux上,同一台计算机上的CPU负载很少达到20% 我已经在firefox、chrome和opera这两个平台上进行了测试,结果几乎相同 有人能解释一下发生了什么事吗 <script> var scrllTmr; window.onload = function(){ //set style document.getElementById('scroll').s

我有一个简单的js脚本,可以水平滚动图像

奇怪的是,它在windows上的CPU负载高达100%,而在linux上,同一台计算机上的CPU负载很少达到20%

我已经在firefox、chrome和opera这两个平台上进行了测试,结果几乎相同

有人能解释一下发生了什么事吗

<script> 
var scrllTmr;
window.onload = function(){
    //set style
    document.getElementById('scroll').style.overflow = 'hidden';
    document.getElementById('scrollme').style.float = 'left';
    document.getElementById('scrollme').style.position = 'relative';

    //get canvas
    cw = parseInt(document.getElementById('scroll').offsetWidth);
    w = parseInt(document.getElementById('scrollme').offsetWidth);

    //start scroll
    lft = -2101;
    document.getElementById('scrollme').style.left = lft + "px";
    scrollStep(cw,w,lft);
}
function scrollStep(cw,w,lft){
    //calc and do step
    if(lft == w * -1)
        lft = cw + w;
    document.getElementById('scrollme').style.left = lft + "px";

    //wait and do next...
    if(scrllTmr)
        clearTimeout(scrllTmr);
    scrllTmr = setTimeout('scrollStep(cw,w,' + (lft - 1) + ')',10);
}
</script> 

var-scrltmr;
window.onload=函数(){
//设置样式
document.getElementById('scroll').style.overflow='hidden';
document.getElementById('scrollme').style.float='left';
document.getElementById('scrollme').style.position='relative';
//获取画布
cw=parseInt(document.getElementById('scroll').offsetWidth);
w=parseInt(document.getElementById('scrollme').offsetWidth);
//开始滚动
lft=-2101;
document.getElementById('scrollme').style.left=lft+“px”;
滚动步进(cw、w、lft);
}
功能滚动步进(cw、w、lft){
//计算并执行步骤
如果(lft==w*-1)
lft=cw+w;
document.getElementById('scrollme').style.left=lft+“px”;
//等待并做下一步。。。
如果(scrllTmr)
清除超时(scrllTmr);
scrllTmr=setTimeout('scrollStep(cw,w,,+(lft-1)+'),10);
}
事实上,任何协同工作的javascript代码都会以这种方式运行


<script> 
var scrllTmr;
window.onload = function(){
    //set style
    document.getElementById('scroll').style.overflow = 'hidden';
    document.getElementById('scrollme').style.float = 'left';
    document.getElementById('scrollme').style.position = 'relative';

    //get canvas
    cw = parseInt(document.getElementById('scroll').offsetWidth);
    w = parseInt(document.getElementById('scrollme').offsetWidth);

    //start scroll
    lft = -2101;
    document.getElementById('scrollme').style.left = lft + "px";
    scrollStep(cw,w,lft);
}
function scrollStep(cw,w,lft){
    //calc and do step
    if(lft == w * -1)
        lft = cw + w;
    document.getElementById('scrollme').style.left = lft + "px";

    //wait and do next...
    if(scrllTmr)
        clearTimeout(scrllTmr);
    scrllTmr = setTimeout('scrollStep(cw,w,' + (lft - 1) + ')',10);
}
</script> 
var-scrltmr; window.onload=函数(){ //设置样式 document.getElementById('scroll').style.overflow='hidden'; document.getElementById('scrollme').style.float='left'; document.getElementById('scrollme').style.position='relative'; //获取画布 cw=parseInt(document.getElementById('scroll').offsetWidth); w=parseInt(document.getElementById('scrollme').offsetWidth); //开始滚动 lft=-2101; document.getElementById('scrollme').style.left=lft+“px”; 滚动步进(cw、w、lft); } 功能滚动步进(cw、w、lft){ //计算并执行步骤 如果(lft==w*-1) lft=cw+w; document.getElementById('scrollme').style.left=lft+“px”; //等待并做下一步。。。 如果(scrllTmr) 清除超时(scrllTmr); scrllTmr=setTimeout('scrollStep(cw,w,,+(lft-1)+'),10); }

事实上,任何javascript代码都会以这种方式协同工作

可能是视频管道中的某个东西。我猜这台机器使用软件渲染,例如Intel 950或3100。视频驱动程序中的差异可能导致这种情况。

是的,将第42行从
var foo=bar
var foo=baz。认真地给我们一些代码、链接和/或资源来查看。当你展示一些代码/东西时,我们不读心智=p可以解释。@anddoutoi:+1,但我们中的一些人读心智。我觉得。。。讽刺…英特尔公司移动945GMYou应该编辑您的问题,而不是提供此作为答案。