如果 createElement 函数位于
  • 元素内,请避免使用该函数 (contentEditable)
  • 2023-12-13

    我使用这个函数来替换<DIV>New Divs</DIV> with <BR>使用 Safari 和 Chrome 在 contentEditable div 上的断行中:

    $("#form_description").live("keypress", function(e){
    if (e.which == 13) {
    if (window.getSelection) {
      var selection = window.getSelection(),
          range = selection.getRangeAt(0),
          br = document.createElement("br");
      range.deleteContents();
      range.insertNode(br);
      range.setStartAfter(br);
      range.setEndAfter(br);
      range.collapse(false);
      selection.removeAllRanges();
      selection.addRange(range);
      return false;
    }
    }
    });
    

    问题是当我在里面输入时<UL><LI>Something</LI></UL>我按“返回”键,我不想得到<BR>,所以我可以继续这个列表......

    如果我在一个LI元素?

    编辑我的答案:

    好的,我已经成功做到了,但是如果您对代码有任何评论,欢迎您:

    $("#form_description").live("keypress", function(e){
    if (e.which == 13) {
    
      node = document.getSelection().anchorNode;
      nodeName = node.parentNode.nodeName.toLowerCase();
    
      if ((nodeName != "li") && (nodeName != "blockquote")) {
    ... etc }
    

    首先,使用keyup作为事件名称,keypress 仅适用于 Firefox。

    其次,e.这并不总是可用的。主要使用 e.keyCode,然后回退到 e.which:

    var code = e.keyCode || e.which;
    if (code == 13) {
      // your code here..
    }
    

    第三,如果您需要取消按键中触发的默认事件,您可能需要在事件处理程序例程中添加一个 PreventDefault() 。确保它是第一行。

    function(e){
       e.preventDefault();
     ..
    }
    
    本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

    如果 createElement 函数位于
  • 元素内,请避免使用该函数 (contentEditable) 的相关文章
    • 如何处理 AJAX 请求中的会话超时

      我相信你们都熟悉使用 AJAX 的投票系统 嗯 看那边 我有类似的东西 当你投票赞成或反对时 它使用 AJAX 从 votes php 请求新值 问题是我正在使用会话来获取用户 ID 因此一个人只能投票一次 如果他们在页面上坐了一个小时然后
    • 像在 tumblr 注册页面上那样鬼写

      有谁知道如何创建一个类似 tumblr 的字段 http www tumblr com http www tumblr com 这是一个 URL 字段 其中有一些褪色的文本 然后当您单击它并键入时 它会附加一些文本 tumblr com 您
    • 在 jQuery .live() 方法中模拟“焦点”和“模糊”

      Update 从 jQuery 1 4 开始 live 现在支持focusin and focusout events jQuery http www jquery com currently1 doesn t support blur o
    • 如何在 DOM 中的每个元素中调用函数,即使它们是动态创建的

      我想对 DOM 上的特定元素调用函数 例如 red css backgroundColor pink 它适用于 DOM 中已经存在的任何元素 但我也希望在动态添加到 DOM 的元素中调用此方法 我尝试过类似的事情 red on functi
    • JQuery datepickers-从开始日期设置结束日期

      使用了两个 Jquery 日期选择器 StartDate 和 EndDate
    • JQuery:将 FormData 和 csrf 令牌一起发布

      Is the data 下面的行正确吗 我想将表单数据和 csrf 令牌发布到 Django 视图函数 file upload on change function var currentpath window location pathn
    • 如何在 Jquery/Javascript 中绑定模糊和更改,但只触发一次函数?

      我试图在选择元素更改时触发函数 由于 Ipad 在 on change 方面遇到问题 我还想绑定到 blur 这在 Ipad 上工作得很好 但是我不希望两个事件都触发该函数两次 所以我需要某种挂钩来确保两个事件是否都触发change and
    • Rails 3:如何让用户在表单中至少选择一个复选框?

      我有一个表单 用户在提交表单之前必须选中至少一个复选框 有没有任何插件可以处理这个问题或者jquery可以应用于我的表单 不幸的是我完全是一个 jquery 菜鸟 上面的所有答案都显示了如何在客户端执行此操作 这确实可能更好 正如您的问题标
    • 是否可以使用 jQuery .on 和悬停?

      我有一个 ul 在初始页面加载后用 javascript 填充 我目前正在使用 bind with mouseover and mouseout 该项目刚刚更新到 jQuery 1 7 所以我可以选择使用 on 但我似乎无法让它工作hove
    • HTML 下拉菜单禁用 Javascript 中的选项

      Question 下面的代码是隐藏所选项目下拉列表中的选项 因此 当用户选择该选项时 它将隐藏所有下拉选择列表中的所选值 我现在有四个下拉选择 我想实现像当下拉选择被触发时它将启用当前选择的选项值 意味着用户能够在用户触发时选择回下拉选择中
    • 动态添加案例到交换机

      我需要动态地将案例添加到交换机 我希望用户能够添加项目 并且每个项目都需要它自己的开关盒 您可以使用带有回调函数的对象 You can have initial cases var callbacks something gt 42 and
    • Setinterval随着指数时间减少

      我有一个带有 setinterval 的 mousedown 事件 我希望间隔时间是可变的 所以第一个是 500 第二个是 500 2 250 等等 有什么建议吗 plus mousedown function e increment 20
    • 如何在jquery中每4秒添加和删除一个类

      由于某种原因 这并不是每 4 秒在具有 post 类的元素上添加和删除一个新类 jquery 正确加载 就像这样 chrome 显示代码没有错误 document ready function post addClass display d
    • 在 Select(DropDown) 更改事件上重新初始化 Jquery DataTable

      我正在使用 Jquery UI DataTable 它被填充select DropDown change事件 在PageLoad没关系 当我表演时dropdown change event DataTable is Reinitialize
    • 如何在 drop 事件 jquery 上获取已删除项目的 id

      当我将某些东西放到 jquery droppable 时 我想获取删除的项目的 id 当我这样做时 here droppable tolerance fit accept one drop function id this attr id
    • Jquery UI 可调整大小的问题超出了遏制范围(也使用了可拖动)

      我面临的问题是 div 的可调整大小 当我将它与 Draggable 一起使用时 它会出现问题并且无法调整其宽度方向的大小 如果我单独使用可调整大小 那就没问题了 但我需要让它与可拖动功能一起使用 请建议 单击演示的 jsFiddle 链接
    • 如何按多个项目搜索/过滤列表?

      我正在寻找一个示例 或者可能是一个关于通过在文本框中输入的多个项目来过滤 搜索项目列表的方法的一点提示 假设我有一个列表 ul li Coffee li li Tea li li Milk li li Water li li Juice l
    • 实现悬停信息框

      我有一个日历 当用户将鼠标悬停在单元格上时 会出现一个很大的信息框 其中包含该日期的详细信息 虽然当用户离开时使信息框消失 但我遇到了一些麻烦 我基本上想要它 这样当鼠标光标移出信息框隐藏的日历单元格时 它就会消失 但我遇到了麻烦 因为mo
    • 将 onclick 事件应用于页面加载时不存在的元素

      我将列表样式设置为看起来像选择框 并且当用户单击列表中的元素时我想触发一个函数 但是该元素是通过加载的AJAX因此 当页面加载并且我无法绑定时不存在onclick事件到它onDomReady 如果我把它作为一个普通的选择列表 我可以只标记一
    • JQuery 删除和内存泄漏

      我正在开发一个游戏 我看到了很多内存消耗 我使用jquery animate 动画完成后 我 remove 元素 我的问题是 从 dom 树中删除一个元素后 对象还存在记忆中吗 Javascript 是一种垃圾收集语言 这意味着当没有代码保

    随机推荐