V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐关注
Meteor
JSLint - a JavaScript code quality tool
jsFiddle
D3.js
WebStorm
推荐书目
JavaScript 权威指南第 5 版
Closure: The Definitive Guide
Livid
V2EX  ›  JavaScript

如果让一个 textarea 能够接受 enter 就提交,是否有什么弊端呢?

  •  
  •   Livid · 2011-11-10 03:17:01 +08:00 · 5242 次点击
    这是一个创建于 4792 天前的主题,其中的信息可能已经有所发展或是发生改变。
    比如是否有什么输入法其实是用 enter 选字?
    25 条回复    1970-01-01 08:00:00 +08:00
    killpanda
        1
    killpanda  
       2011-11-10 03:34:23 +08:00
    是的,linux下也许会有问题。
    例如,在linux下的fcitx输入法,可以用回车输入英文(就和搜狗输入法一样),但是很多程序会把这个回车直接当作提交来处理,非常头疼。
    linusef
        2
    linusef  
       2011-11-10 03:42:05 +08:00
    单 enter 很容易和换行冲突,ctrl+enter 用的比较广泛,可以考虑。
    Livid
        3
    Livid  
    MOD
    OP
       2011-11-10 03:45:16 +08:00
    @killpanda 但是如果 Ctrl+Enter 提交的话,是否有可能让 Mac 用户 Command+Enter 提交呢?
    Alpha
        4
    Alpha  
       2011-11-10 03:57:03 +08:00
    Weakdancer
        5
    Weakdancer  
       2011-11-10 04:21:20 +08:00
    @livid 正好我昨晚研究了下chrome扩展。

    iReader的快捷键函数很好。

    这是它们的option.js的一部分:

    if (this.ctrlKey)
    result.push(Utils.OS.isMac ? "⌘" : "Ctrl");
    keakon
        6
    keakon  
       2011-11-10 04:32:53 +08:00
    @Livid 所以我倾向于shift+enter…

    @Alpha 这帖好蛋疼,现在谁还在mac下用ie啊…不过jquery下确实可用e.metaKey || e.ctrlKey。
    victor
        7
    victor  
       2011-11-10 04:41:47 +08:00
    @Livid 那就不能輸入
    這樣

    文字了
    shawiz
        8
    shawiz  
       2011-11-10 04:45:12 +08:00
    其实可以参照 Facebook 的邮件处理方式:
    默认是一行 input, enter 提交;
    下面有个可选的 checkbox 允许你变成多行模式,这时按 enter 会换到下一行。右边同时出现了 "Reply" 的提交按钮。
    victor
        9
    victor  
       2011-11-10 04:51:04 +08:00
    LS說得好
    shawiz
        10
    shawiz  
       2011-11-10 05:08:53 +08:00
    不过个人感觉,这个文本框要看用来做什么。如果是聊天等输入频繁的应用,应该允许 Enter 直接发帖。否则光是按钮也不会带来困扰。
    Livid
        11
    Livid  
    MOD
    OP
       2011-11-10 05:43:36 +08:00
    Echofon for Firefox 的回复就是用 Enter 提交,感觉不错。
    Livid
        12
    Livid  
    MOD
    OP
       2011-11-10 05:44:04 +08:00
    大家去尝试一下目前 V2EX Workspace 的 News Feed 吧。

    https://workspace.v2ex.com/
    fen
        13
    fen  
       2011-11-10 08:32:49 +08:00
    我通常用 tab+enter,所有平台、各个浏览器基本通用
    kidblg
        14
    kidblg  
       2011-11-10 08:44:56 +08:00
    @shawiz说的好,得看文本框用来干什么,如果频繁输入的应用,就得需要一些快捷键了。
    unstop
        15
    unstop  
       2011-11-10 09:41:23 +08:00
    @Livid 新的时间轴非常棒。textarea 用回车提交主要的弊端可能就是不能分行了,或者分行很麻烦(ctrl/command+enter)。

    同意@shawiz 的提议。

    另外,个人经验,输入法使用回车选词好像不会影响提交表单。
    kaiix
        16
    kaiix  
       2011-11-10 11:26:21 +08:00
    @Livid IMO回车提交textarea感觉不太好 要有适应过程 可能的确需要newline区分内容。 如果的确想加入这个特性不如考虑 @shawiz 提到的facebook的方式 区分出单行和多行 单行的状态下用enter可以提交

    PS: timeline删除失效?
    Kirkcong
        17
    Kirkcong  
       2011-11-10 11:35:23 +08:00
    直接ctrl+enter就行了吧?
    何必非要打造成不同呢。
    ohhe
        18
    ohhe  
       2011-11-10 11:39:17 +08:00
    希望所有的textarea都支持tab+enter
    Livid
        19
    Livid  
    MOD
    OP
       2011-11-10 19:15:16 +08:00
    @Kirkcong 不是刻意打造不同,是我缺乏经验。我之前没有做过 Ctrl+Enter 的提交,我自己平时也不用 Ctrl+Enter 提交。
    xingzhi
        20
    xingzhi  
       2011-11-10 19:19:39 +08:00
    @Livid 为什么workspace要重新登陆?
    不能检测在v2ex已登陆的cookies。
    Livid
        21
    Livid  
    MOD
    OP
       2011-11-10 19:23:49 +08:00
    @xingzhi SSO 单点登录确实在计划中。

    但是那个东西的风险是会让首次直接访问 V2EX Workspace 的用户的访问速度变慢。

    有单点登录的网站比如 weibo.comhotmail.com 的首次访问都会经过太多次跳转。
    ooof
        22
    ooof  
       2011-11-10 19:42:20 +08:00
    某手机用户表示很痛苦,找不见 Ctrl 键。
    Kirkcong
        23
    Kirkcong  
       2011-11-10 22:43:56 +08:00
    @Livid 目前的情况是,国内的编辑器,都基本是ctrl+enter,这个最普遍。
    非要geek一点,我觉得没必要了哈。
    kojp
        24
    kojp  
       2011-11-10 22:58:11 +08:00
    @fen

    表示同意。。。
    benzheren
        25
    benzheren  
       2011-11-10 23:01:09 +08:00
    可以做成可选的吗?像FB那样的,其实我就有点不习惯enter直接发布⋯
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5978 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 02:36 · PVG 10:36 · LAX 18:36 · JFK 21:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.