mui+回复弹出软键盘

最近再做一个APP的时候,有一个评论回复的功能,在做APP的时候,直接用手指触发focus事件,来唤醒软键盘的弹出没有问题, 但是现在的功能需要对点击回复进行弹出软键盘来操作,参考过很多都有问题,后来仔细看了下官方的DEMO,发下这个问题是可以被解决掉的。具体方法如下:

<style type="text/css">
.show-input-main{width: 100%; height:40px; border: 1px solid red;  position: fixed; left:0px; bottom:0px; z-index: 20;}
.show-input-box{width: 100%; height:40px; padding-right:55px;}
.input-box{width: 100%; height:100%; background:yellow;}
.input-box-btn{width: 55px; height: 100%; background: #007aff; position: absolute; top:0px; right:0px; text-align:center; line-height: 40px; color:#fff; font-size:16px;}
#textarea-input{width: 100%; height:38px; border:1px solid #fff; line-height: 24px; min-height:38px; margin:0px; padding:5px 2px; }
</style>
<div class="mui-input-row">
    <button id="showInput">点我回复</button>
</div>
<div class="mui-input-row show-input-main">
    <div class="show-input-box">
        <div class="input-box">
            <textarea id="textarea-input"></textarea>
        </div>
        <div class="input-box-btn">发送</div>
    </div>
</div>

具体JS代码:

var showInputObj = document.getElementById(‘showInput‘);
var clickShowSoftInput = function(){
    if (mui.os.android) {
        imm.toggleSoftInput(0, InputMethodManager.SHOW_FORCED);
    } else {
        nativeWebview.plusCallMethod({
            "setKeyboardDisplayRequiresUserAction": false
        });
    }
    setTimeout(function() {
        var inputElem = document.querySelector(‘#textarea-input‘);
        inputElem.focus();
        inputElem.parentNode.classList.add(‘mui-active‘); //第一个是search,加上激活样式
    }, 200);
};
mui.plusReady(function() {
    initNativeObjects();
    // 监听点击事件
    showInputObj.addEventListener(‘tap‘,function(){
        clickShowSoftInput();
    });
});

经测试没有问题。

原文地址:https://www.cnblogs.com/e0yu/p/10364952.html

时间: 2024-09-30 19:15:52

mui+回复弹出软键盘的相关文章

弹出软键盘时,不把activity整体往上移,只移动部分

如图,EditText在整个activity的最下方,当弹出软键盘时,如果整个activity往上移动,会导致最上面那些部分会看不见,而中间又还有这么多空白的空间,显然不合理. 为了只移动activity中的部分空间,可以将这块部分放在ScrollView中,设置ScrollView的layout_weight="1",即让他占满空位.当弹出软键盘时,就会去移动这部分的空间了.

android的alertdialog中加入edittext但是不弹出软键盘等问题的解决与原因

摘要:alertdialog中加入edittext但是不弹出软键盘等问题网上有很多不管用的解决方案, 本文意在给出更有效的解决办法,并初步探究其原因 正文 在对话框中插入文本框是十分常见的需求 通常我们选择在代码中创建edittext对象 这个时候就需要在代码中给edittext设置输入属性了 但是经常发现设置的属性不起作用,甚至都不弹出软键盘(虽然实体键盘可以输入) 问题的解决方案有很多种,这里介绍一种我比较常用的方法: inputPassEditText.setInputType(Input

Cocos2d-X中使用CCTextFieldTTF的简单应用显示文本和弹出软键盘

 学了几天Cocos2d-X后今天终于可以试试Cocos2d-X的跨平台开发了,由于条件的限制,我只会测试Cocos2d-X在Android平台上的开发,今天就以一个简单的文本测试Android上的效果,需要用到CCTextFieldTTF类,CCTextFieldTTF是一个显示文本控件的类用于输入文本和现实文本类似于Windows编程中的Static控件和Edit控件 程序实例:使用TextFieldTTF类创建一个文本,触摸文本弹出软键盘 首先创建一个TextFieldTTF.h的头文

[Phonegap+Sencha Touch] 移动开发24 打包wp8.1的App,运行时输入框聚焦弹出软键盘之后,界面上移而不恢复原位的解决办法

这个现象只出现在phonegap打包sencha touch的wp8.1程序会出现(仅wp8.1,wp8正常),其它js框架我测试了几个(app framework, jquery mobile),好像没有这个问题. 我来描述一下这个现象: 1.运行phonegap打包的wp8程序,打开一个有输入框的界面,如下图: 2.点击输入框,使其弹出软键盘,界面会上移,如下图: 3.点返回键隐藏软键盘(或者点击界面上其它地方隐藏软键盘),此时界面不恢复原位,如下图: 我的一些研究结果: 1.这种现象只出现

禁止移动端input弹出软键盘

在做三级联动,或者一些时间插件的时候总是弹出软键盘,用下面的方法就可以禁用掉,废话不多说直接上代码. HTML代码 <div class=""> <div> <input type="text" id="disable1" class="" placeholder=""/> </div> <div> <input type="tex

【android】禁止Edittext弹出软键盘并且使光标正常显示

/** * 禁止Edittext弹出软件盘,光标依然正常显示. */ public void disableShowSoftInput() { if (android.os.Build.VERSION.SDK_INT <= 10) { editText.setInputType(InputType.TYPE_NULL); } else { Class<EditText> cls = EditText.class; Method method; try { method = cls.get

设置EditText不弹出软键盘

两种方式设置EditText不弹出软键盘 1.设置焦点在其他控件上: 设置 android:focusable="" android:focusableInTouchMode="" 属性为false 2.设置activity不自动弹出软键盘: 在AndroidManifest.xml设置: <activity android:name="smalt.manger.sms.SmsShowDetailItemsActivity" android

Android 弹出软键盘android:windowSoftInputMode设置总结

当在Android的layout设计里面如果输入框过多,则在输入弹出软键盘的时候,下面的输入框会有一部分被软件盘挡住,从而不能获取焦点输入.或者是有使用framentlayout悬浮在底部的button也会挡住输入框. 一.解决办法 方法一: 在你的activity中的oncreate中setContentView之前写上这个代码getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN); 方法二:

Android--点击EditText的时候弹出软键盘,点击EditText之外空白处软键盘消失

在android中点击EditText的时候会弹出软键盘,但当我们输入完毕或者想隐藏软键盘时,我们可以点击软键盘上的隐藏按钮,这种方法固然可行,但是为了提高用户体验,我们常常要实现这种功能:当输入完毕后想隐藏软键盘时我们通过直接点击EditText的之外的其他空白处就可以隐藏软键盘,这种做法明显比点击软键盘自身的隐藏按钮要方便的多. 要实现上述功能只需重写 public boolean onTouchEvent(MotionEvent event)方法,做相应软键盘隐藏的处理操作即可. Inpu