Javascript 如何在函数中使用这段代码
我有这个jQuery代码:Javascript 如何在函数中使用这段代码,javascript,jquery,Javascript,Jquery,我有这个jQuery代码: var vis = (function(){ var stateKey, eventKey, keys = { hidden: "visibilitychange", webkitHidden: "webkitvisibilitychange", mozHidden: "mozvisibilitychange", msHidden: "msvisibilitychange" };
var vis = (function(){
var stateKey, eventKey, keys = {
hidden: "visibilitychange",
webkitHidden: "webkitvisibilitychange",
mozHidden: "mozvisibilitychange",
msHidden: "msvisibilitychange"
};
for (stateKey in keys) {
if (stateKey in document) {
eventKey = keys[stateKey];
break;
}
}
return function(c) {
if (c) document.addEventListener(eventKey, c);
return !document[stateKey];
}
})();
vis(function(){
document.title = vis() ? 'Visible' : 'Not visible';
});
它现在要做的是更改页面的文档标题。如果页面不可见,则会将其更改为该页面,并使用vise verca
我的问题是,我怎样才能像这样使用这个函数:
if page is visible{
//do something
}
if page is not visible{
//do something else
}
当传递事件处理程序时,vis()
函数正在绑定事件处理程序,否则返回状态。因此:
vis(function(event) {
if ( vis() ) {
// visible
} else {
// not visible
}
});
或者更详细地说:
var handler = function(){
// calling vis() with no arguments will return a boolean
if (vis()) {
// visible
} else {
// not visible
}
}
// if a handler is passed, it gets bound to the event
// thus, runs on *any* visibility state change
vis(handler);
你在问如何调用函数吗?
if(vis()){}else{}
?这个函数中似乎没有任何jQueryquestion@numbers1311407如果vis
被传递一个参数,它将添加一个事件侦听器。如果没有传递参数,它只返回可见性状态。@PaulS:它以任意一种方式返回状态:-)