我的主页上有两个滑块,一个是使用插件(AnythingSlider),另一个是使用jQuery UI(jquery-ui-1.8.9.custom.min.js)。将AnythingSlider添加到页面后,第二个滑块上的悬停功能在IE7和IE8中停止工作。这是悬停功能的代码:
st = null;
$('.homepage-leftscroller').hover(function() {
slideleft();
st = setInterval(slideleft, 200);
}, function() {
clearInterval(st);
});
以下是slideleft功能的代码:
function slideleft() {
v = s.slider('option', 'value');
if (v > 0)
v -= 50;
ui.value = v;
s.slider('option', 'value', v);
f = s.slider('option', 'slide');
f(null,ui);
}
我没有创建第二个滑块,我确实添加了第一个滑块。有问题的页面在这里:
http://rareculture.net/index.php
感谢您提供的任何帮助。谢谢。
P.S。 包含悬停功能的代码块如下所示:
$(function() {
slider = $('.artist-homepage-slider .artist-wrapper');
而AnythingSlider代码块的开头如下:
$(function(){
$('#slider')
这可能是问题吗?为什么它只会在IE7和IE8中断?
答案 0 :(得分:1)
我无法判断这是否与您的问题有关,但以下语句将值分配给 global (或至少从更广泛的范围),而不是 local < / em>,变量。如果您在这些前面添加var
,它们将成为声明,并且它们将在本地声明 。
st = null;
v = s.slider('option', 'value');
f = s.slider('option', 'slide');
jslint可以检测到类似的问题。