2016-12-06 8 views
1
<div id="message" class=""> 
     <textarea id="message_input" name="message" class="inactive" data-value="Bericht..."></textarea> 
     <span class="settings"></span> 
     <div id="message_send"><i class="fa fa-paper-plane-o"></i></div> 
    </div> 

$("#message_send").click(function(){ 
    //not doing anything yet 
}); 

Когда я сосредотачиваюсь на текстовом поле, виртуальная клавиатура появляется на мобильных устройствах так, как должна. Однако при нажатии кнопки #message_send он должен оставаться и не скрываться. Как я могу предотвратить скрытие клавиатуры, не теряя событие jQuery click?Не скрывайте виртуальную клавиатуру с jquery Нажмите

ответ

1

Попытки предотвратить поведение по умолчанию с помощью e.preventDefault():

$("#message_send").click(function(e){ 
    e.preventDefault(); 
}); 

Try также touchstart/touchend:

$("#message_send").on('touchstart touchend', function(e){ 
    e.preventDefault(); 
}); 

Надеется, что это помогает.

+0

Thx, попробовал bu t не работает – Mart

+0

добро пожаловать, вы уверены, что нажата кнопка? –

+0

Кстати, разве вы не должны добавлять e внутри функции() как функция (e)? – Mart

-1

Попробуйте

< ДИВ ID = "message_send" класс = "">

BLABLABAL

</DIV>

+0

Как это вообще может помочь, пожалуйста, прочитайте мой вопрос лучше – Mart

0
I find this solution http://jsfiddle.net/YQxXN/1/ 

Я надеюсь помочь вам

<textarea id="txt"></textarea> 
<input type="button" id="btnClick" value="Submit" /> 
<script> 
$(document).ready(function() { 
    var field = $("#txt"); 
    var btn = $("#btnClick"); 
    field.on("focusin", f1); 
    field.on("focusout", f2); 
    btn.on("mousedown", f3); 

    function f1() { 
     field.removeClass("c1").addClass("c2"); 
    } 

    function f2() { 
     field.removeClass("c2").addClass("c1"); 
    } 

    function f3() { 
     alert('hi');`enter code here` 
    } 

}); 
</script>