Javascript成员变量未定义

时间:2012-10-09 16:53:53

标签: javascript jquery variables

function Class() {
    var self=this;
    self.searchfield=$('#search');
    self.resultbox=$('#searchresults');

    self.onSearchFieldChanged=function() {
        console.log("F: "+self.searchfield);
        console.log("R: "+self.resultbox);
    }
    self.searchfield.live("keyup",self.onSearchFieldChanged);
}
var INSTANCE=null;
Class.init=function() {
   INSTANCE=new Class();
}
$(document).bind("globalsloaded", Class.init);

只要在#search输入中输入内容,控制台上的输出就会如下:

F: undefined
R: undefined

那么为什么这两个变量未定义?它们在范围内,应该包含相应的jQuery对象。

1 个答案:

答案 0 :(得分:0)

经过5天的工作,我发现了问题:JQueryMobile

会发生什么:

  1. deviceready event by phonegap
  2. domready活动
  3. 我的初学者叫
  4. JQM提取input#search元素再次重新插入,被一些样式div包围
  5. 我在初始版中保存的div不再有效,因为它指的是" old" dom元素
  6. 现在我在JQM的pageinit事件中进行初始化。没问题了。