我正在尝试在iPad应用程序上创建自定义键盘。但每次输入获得焦点时,弹出原生iPad键盘。我怎样才能在JavaScript中阻止这种情况。
答案 0 :(得分:13)
将属性“readonly”添加到您的输入中,并提供一种不同的填充值的方法。
答案 1 :(得分:1)
我认为你不能阻止键盘出现在输入字段上。但是,您可以创建一个html元素,它看起来就像一个带CSS的输入字段,并处理onClick事件以显示您的自定义键盘。
<style>
.textField{
width: 120px;
height: 17px;
border-style:inset;
border-width: 2px;
border-color: gray;
float: left;
}
</style>
<script>
function showKeyboard(){
alert("show the my cool keyboard");
}
</script>
Name: <div onClick="showKeyboard()" class="textField"></div>
您应该结帐Sencha Touch以开发适用于iOS设备的网络应用程序。
答案 2 :(得分:1)
position
absolute
div
在文本输入字段顶部加z-index:1
,并将onclick
处理程序附加到div
启动键盘。
下一步是附加小键盘数字以影响文本字段的值。
答案 3 :(得分:1)
最好的办法是在onclick事件上停止活动 html:
<textarea onclick='myOnClickEvent'></textarea>
Javascript:
function myOnClickEvent(e){
e.stopPropagation();
}
道场:
function myOnClickEvent(e){
dojo.stopEvent(e);
}
Sencha:
function myOnClickEvent(e){
e.stopEvent();
}
我希望这有帮助。
答案 4 :(得分:0)
您应该检查safari sdk,移动版Safari / html5还有一些额外的输入类型。
否则,您可以将div / span设置为看起来像输入并具有隐藏的隐藏字段,然后单击它时调出自定义div等,并根据用户操作将值放入“输入”。 / p>
当然,您可以使用渐进增强功能进行渲染,并将其渲染为普通文本框,然后在页面加载时交换隐藏字段/ div / span等的普通文本输入
答案 5 :(得分:0)
仅供参考,您也可以在输入上调用blur()来隐藏键盘......虽然在这种情况下可能不是一个好的解决方案。
答案 6 :(得分:0)
我们遇到了完全相同的问题,因此我们使用了以下代码。
<input type="text" onclick="openAlphaNumKeyboard(this)" onfocus="blur()" id="test-input" />