2016-05-22 91 views
0

我正在Android Cordova应用程序中,我想以编程方式打开加载页面时的软键盘(键盘而不是普通键盘)。 已经有一个插件,应该做我需要的 (Cordova Android Focus Plugin),但我不能让它按预期工作。在Android科尔多瓦仿真原生触摸

我的代码到焦点的元素“Stunden”看起来像这样:

<script src="cordova.js"></script> 

<script type="text/javascript" charset="utf-8"> 
function onLoad() { 
    document.addEventListener("deviceready", onDeviceReady, false); 
} 

function onDeviceReady() { 
    cordova.plugins.Focus.focus('Stunden'); 
} 
</script> 

. 
. 
. 

<body onload="onLoad()"> 

当代码的设备我得到以下错误上执行:

Uncaught TypeError: Cannot read property 'Focus' of undefined

所以我猜码在插件完全加载之前执行,但是我找不到另一个比“deviceready”等待的方法。 感谢您的帮助!

回答

0

一些摆弄后,我发现了如何得到它的工作:

Android Focus Plugin文档它说,你可以通过调用函数

cordova.plugins.Focus.focus(element); 

更换将焦点设置一个元素(元素)与(“Stunden”)打破了功能,而是定义了一个变量

element = document.getElementByID('Stunden') 

是否有效。这可能是非常基本的,但如果有人绊倒了这个,我会把它留在这里。

工作代码,然后看起来像这样

<script src="cordova.js"></script> 

<script type="text/javascript" charset="utf-8"> 
function onLoad() { 
    document.addEventListener("deviceready", onDeviceReady, false); 
} 

function onDeviceReady() { 
var element = document.getElementById('Stunden') 
    cordova.plugins.Focus.focus(element); 
} 
</script> 

. 
. 
. 

<body onload="onLoad()">