为什么我不能使用jQuery时,通过窗口对象访问的对象?(Why can't I acces

2019-09-22 12:39发布

我想通过这个窗口对象来访问的功能。 在我的代码,我的功能得到由一个字符串,所以我必须使用window对象(或EVAL)抓住它简称。 我在纯JavaScript测试了我的代码,它完美的作品。 但是,使用jQuery时失败。 这里是我的测试代码:

function speak(words, callback){
  for(var i=0;i<10000;i++){
      console.log(words);
  }
  if(callback)
    callback.call();
}

console.log(window['speak']);​

这里是纯JavaScript版本,其作品的链接。
下面是jQuery的版本,它不工作的链接。

我需要做什么做的,使jQuery的这项工作?

Answer 1:

你没有申报speak其中的一名成员window ,和实际的jsfiddle把它封装在一个document.ready回调。 你需要明确设置window.speak = speak ,如果你想它可用作为你的代码的一部分window对象 。

或者,你需要配置你的小提琴无包装执行,而不是onDomReady



文章来源: Why can't I access objects through the window object when using jQuery?