首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Shift + Enter»多行

Shift + Enter»多行
EN

Stack Overflow用户
提问于 2015-03-21 10:58:10
回答 2查看 1K关注 0票数 0

首先,英语不是我的母语,如果我有任何错误,很抱歉。

在函数中有消息发送问题,我已经尝试过Jquery代码,但我不能修复它。

当我按回车键时,消息到达接收器,这很好。但是当我按下Shift和Enter时,消息再次到达接收器,我想在按下这两个键的时候创建新的线路。

Jquery代码:

代码语言:javascript
复制
$(document).ready(function() {
	$('input#chat').bind('keydown', function(e) {
		if(e.keyCode==13) {
			// Store the message into var
			var message = $('input#chat').val();
			var id = $('#chat').attr('class');
			if(message) {
				// Remove chat errors if any
				$('.chat-error').remove();
				
				// Show the progress animation
				$('.message-loader').show();
				
				// Reset the chat input area			
				document.getElementById("chat").style.height = "25px";
				$('input#chat').val('');

EN

回答 2

Stack Overflow用户

发布于 2015-03-21 12:17:17

你试过了吗?

代码语言:javascript
复制
 if(e.shiftKey && e.keyCode==13){
     // Don't fill
 } else if(e.keyCode==13){
     e.preventDefault();
     // Store the message into var
        var message = $('input#chat').val();
        var id = $('#chat').attr('class');
        if(message) {
        ........................
 }
票数 0
EN

Stack Overflow用户

发布于 2015-03-21 12:53:21

在这种情况下,当按下shift键时,布尔值会阻止代码运行。

代码语言:javascript
复制
var ShiftDown = false; //Is false when not being pressed, true when being pressed
$(document).ready(function() {
	$('input#chat').keydown(function(e) {
		if(e.which === 16) {
            //Shift key is pressed
            ShiftDown = true;
        }else if(e.which === 13){
            //Code will only run if Shift key is not pressed
            if(ShiftDown === false){
			    // Store the message into var
			    var message = $('input#chat').val();
			    var id = $('#chat').attr('class');
			    if(message) {
				    // Remove chat errors if any
				    $('.chat-error').remove();
				
				    // Show the progress animation
				    $('.message-loader').show();
				
				    // Reset the chat input area			
				    document.getElementById("chat").style.height = "25px";
                    $('input#chat').val('');
                }
            }
        }
    })
    $('input#chat').keyup(function(e) {
        if(e.which === 16){
            //Shift key is no longer pressed
            ShiftDown = false;
        }
    });
}

我刚刚改变了

代码语言:javascript
复制
$('input#chat').bind('keydown',function(e){}) 

代码语言:javascript
复制
$('input#chat').keydown(function(e){})
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29178752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档