2012-06-05 29 views
2

编辑:胡安门德斯的解决方案解决了这个问题,但没有解释更为一般的问题,为什么这对32位而不是64位完全相同的浏览器起作用。只是让我不知道这样的其他问题可能存在,以及如何采取预防措施对他们......这里是原题:一些Javascript未能在64位Internet Explorer中正常运行


我有IE 9上安装两个Windows 7的机器,一个32位和另外64个。所有的IE选项/安全设置都是相同的。

在32位机上,以下网站显示正确。通知关于中途页面向下滚动社交媒体的图标都处于运动中,向左滚动:

http://www.nba.com/warriors/social-media-new-test

在64位机,剧本似乎并没有被运行的图标不动。页面上的其他脚本运行正常(例如,头部有一些javascript控制要显示的图像)。

这里是使图标移动的代码,但是我担心这是一个较大的(不具体)问题:

$(document).ready(function() { 
    setInterval(scrollIcons, 40); 
}); 

function scrollIcons() { 
    var i, thisPos, newPosLeft; 

    for (i=0; i < numIcons; i++) { 
     thisPos = $(iconButtons[i]).position(); 

     newPosLeft = thisPos.left - (1 * scrollspeed); 
     if (newPosLeft < SLIDERLEFTBORDER) newPosLeft = SLIDERRIGHTBORDER; 

     $(iconButtons[i]).attr("style", "left: " + newPosLeft + "px;"); 
    } 
} 

任何人都知道这个问题可能是什么?我错在64位与32位的假设?这似乎是机器与我之间的唯一区别。

+0

你看到的任何错误消息? – Huangism

+0

没有错误信息,只是似乎不想运行它 – dougmacklin

+1

请从'setTimeout'调用中消除难看的eval-ish字符串,而只是将函数引用放在那里。 ''setInterval'可能会更好。 –

回答

2

当我在IE 8中运行你的第64位,我得到以下错误:

// Object doesn't support this property or method 
divs = document.getElementsByClassName('icon_socialmedia'); 

使用jQuery你已经使用在其他地方,因为不是

+0

k我将该行更改为div = $(“。icon_socialmedia”);它的工作原理。然而,这对我来说仍然很麻烦,因为它对于完全相同的浏览器在32位而非64位上运行良好。我不知道还有什么是受到这个... – dougmacklin

+0

@DougieBear我不会担心它。你正在使用一个更新的API,这并没有得到广泛的支持,这就是'jQuery'之类的东西。 –

相关问题