我正在做一个使用while循环的简单测试。
代码如下:
var ishovered = 0;
$('a.hovertest').hover(function(){
    ishovered = 1;
},function(){
    ishovered = 0;
});
while(ishovered == 1)
    {
        //execute function
    }我怎么做才能让while循环一直在测试,并且函数一悬停就会执行?(是的,我知道我可以把这个函数放在悬停部分,我这样问是有原因的)
它不一定非要是一个循环,我只需要一个函数来在ishovered变为1时立即执行。有什么方法可以监控它吗?
下面是示例:http://jsfiddle.net/9s3zE/
发布于 2011-10-01 16:21:52
小提琴:
为此,请使用setInterval。顺便说一句,你是在描述一个“民意调查者”的行为。轮询器检查条件计算结果是否为true。如果为true,则函数已开通。如果为false,则默认行为(可能什么都不发生)发生。在这种情况下使用while循环是不明智的,因为当条件为真时,浏览器将冻结。
var ishovered = 0;
$('a.hovertest').hover(function(){
    ishovered = 1;
},function(){
    ishovered = 0;
});
var showresult = $('#showresult');
window.setInterval(function(){
    if(ishovered == 1){
        showresult.text("You hovered");
    }
    else if(showresult.text() == "You hovered"){
        showresult.text("Default text (not hovered)");
    }
}, 100);https://stackoverflow.com/questions/7619071
复制相似问题