此功能可以正常工作,
window.setInterval(function(){
var active = $('#frontpageControls a.active');
var next = active.next().length > 0 ? active.next() : $('#frontpageControls .first');
active.removeClass("active");
next.addClass("active");
var activeFPElement=$("#MainFrontpage li:visible");
var nextFPElement = activeFPElement.next().length > 0 ? activeFPElement.next() : $('#MainFrontpage .first');
activeFPElement.hide();
nextFPElement.show();
//alert($next.text());
}, 5000);
但是,当我在此
中运行相同的命令时$("#frontpageArrows .right").bind("click", function() {
var active = $('#frontpageControls a.active');
var next = active.next().length > 0 ? active.next() : $('#frontpageControls .first');
active.removeClass("active");
next.addClass("active");
var activeFPElement=$("#MainFrontpage li:visible");
console.log(activeFPElement+ " Fpelement ");
var nextFPElement = $activeFPElement.next().length > 0 ? $activeFPElement.next() : $('#MainFrontpage .first');
activeFPElement.hide();
nextFPElement.show();
return false;
});
该函数无法正常运行,我收到一个错误,即activeFPElement未定义。 任何人都可以帮助我为什么这个函数作为setInterval的处理程序而不是bind?
谢谢:)
答案 0 :(得分:2)
$activeFPElement.next()
应为activeFPElement.next()
。
您宣布activeFPElement
,但您使用的是$activeFPElement
。