2013-05-14 47 views
0

我在我的Titanium应用程序中有一个webview,当我要求它检查变量的类型时返回一个空字符串。这个练习的要点是弄清楚在一个页面上是否存在一个函数,以不同的形式重新载入。Titanium Android webView evalJS不能很好地处理typeof

var hasAuth = self.registerView.evalJS("typeof authenticate;") 

这工作正常的iOS,而事实上在Android中它工作在很多场合也是如此。然而在Android上,它有时会返回虚无,表示为'未定义'。

PS:不,问题不在于在javascript字符串中包含'return'。钛会为你做到这一点,如果你也这样做会导致错误。

回答

0

在这种情况下的解决方案被证明是:

var hasAuth = self.registerView.evalJS("'' + typeof authenticate;") 

不知何故evalJS可以得到typeof运算的工作,但如果符合的typeof开始没有。

+0

错误的方法。 – Wytze 2013-05-14 12:15:39

0

Titanium的webView加载事件的问题在于,它经常引发过早。至少在Android上。当它发生得太早时,还没有可以返回类型的“验证”功能。

所以问题不在evalJS,它与加载事件的时间。

相关问题