内容可编辑光标位置

2023-12-02

我有一个内容可编辑的 div,我希望单击编辑按钮,光标出现在 div 的开头,在它出现在末尾的那一刻。

<li style="display: list-item;" class="menu-item" contenteditable="true">
<div class="">Dior<input type="checkbox" name="selected"></div>
<ol class="">
    <li style="display: list-item;" class="menu-item">
    <div class=""><a href="/portfolios/charlize-theron" class="" name="">Charlize-Theron</a>
    <input type="checkbox" name="selected"></div>
    </li>
    <li style="display: list-item;" class="menu-item">
    <div class=""><a href="/portfolios/natalie-portman" class="" name="">Natalie-Portman</a>
    <input type="checkbox" name="selected"></div>
    </li>
    <li style="display: list-item;" class="">
    <div class=""><a href="/portfolios/sharon-stone-1" class="" name="">Sharon-Stone</a>
    <input type="checkbox" name="selected"></div>
    </li>
</ol>
<a href="#" class="edit" style="opacity: 1; ">Edit</a></li>

因此,当您立即单击“编辑”时,您必须使用箭头键返回到开头才能编辑 Dior(这是唯一真正被编辑的内容)。但我尝试仅将内容可编辑代码添加到 div 中,但它不起作用。

这是我的一些 jQuery

$(".edit").click(function(){
            $(this).parent().children("div").focus(function(){

            });
        });

        $(".edit").hover(function(){
            $(this).css("opacity","0.5")
        }, function(){
            $(this).css("opacity","1")
        });

        $(".edit").parent().blur(function(){
            var sortableList = $(".sortable").html();
            $("#ItemDescription").val(sortableList);
        });

function storeUserScribble(id) {
                var scribble = $("li div").text();
                localStorage.setItem('userScribble',scribble);
              }

              function getUserScribble() {
                if ( localStorage.getItem('userScribble')) {
                  var scribble = localStorage.getItem('userScribble');
                }
                else {
                }
              }

              function clearLocal() {
                clear: localStorage.clear();
                return false;
              }

如果有人可以解释为什么光标没有自动位于 div 的前面,那可能会有所帮助。我想将光标位置设置为在 DIOR 之前启动 IE。

谢谢您的帮助!


js小提琴:http://jsfiddle.net/X6Ab8/

Code:

$(".edit").click(function(e) {
    e.preventDefault();

    var div = $(this).parent().children("div")[0];
    div.focus();

    if (window.getSelection && document.createRange) {
        // IE 9 and non-IE
        var sel = window.getSelection();
        var range = document.createRange();
        range.setStart(div, 0);
        range.collapse(true);
        sel.removeAllRanges();
        sel.addRange(range);
    } else if (document.body.createTextRange) {
        // IE < 9
        var textRange = document.body.createTextRange();
        textRange.moveToElementText(div);
        textRange.collapse(true);
        textRange.select();
    }
});
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

内容可编辑光标位置 的相关文章

随机推荐

  • 您可以从 .Net Microsoft Graph API 获取 PR_TRANSPORT_MESSAGE_HEADERS 0x007D 吗?

    我们使用别名电子邮件地址来将收到的电子邮件与客户进行匹配 所有别名地址都会传送到一个主邮箱中 ToRecipients 中未列出别名地址 如果我在 OWA 中打开电子邮件并查看邮件详细信息 我可以在邮件标头的 收件人 属性中看到别名 我尝试
  • Postgresql 使用 like 选择数组重叠的位置

    是否可以确定是否ARRAY列包含来自另一个数组的重叠值LIKE clause The 运算符有效 但字符串必须完全匹配 q select from articles where keywords mortgage brokers Exact
  • 如何使用 Microsoft Graph API 更新 SharePoint 列表中的人员或组列的值?

    我的情况 我正在使用微软图形API 测试版 更新 SharePoint ListItems 但是 我无法更改 个人或组 列的值 该列具有 允许多项选择 属性 并接受个人和组 这是它作为 ListItem columnSet 的一部分的样子
  • Powershell 和 cmd 环境变量

    我使用批处理脚本来设置该 shell 的一些本地环境变量 当我从该命令提示符启动 PowerShell 时 我期望这些环境变量在 PowerShell 脚本中可用 但我不认为这种情况会发生 有人可以帮助我我所缺少的吗 这些环境变量应该存在于
  • facebook 的社交登录在 ASP.Net MVC 5 项目中不起作用

    我正在学习在我的示例网站中实现 facebook 社交日志的教程 以下是我所做的步骤 将我的本地主机应用程序指向 https 并允许在 VS 中使用假 SSL 在 Facebook 开发者网站上创建了一个 Web 应用程序 并记下密钥和 I
  • 父母和孩子之间的沟通

    新手问题 在 Unix 上 在具有父级和一些子级的程序中 家长如何提醒孩子有效率的做一些工作 或者孩子们如何等待父母信号开始做一些工作 EDIT 该程序尝试并行执行复杂的计算 我已经使用共享内存作为所有子项的公共工作区来更新结果和数据传输
  • 如何在条形图上制作垂直角? [复制]

    这个问题在这里已经有答案了 有没有一种简单的方法可以将圆角放置在 D3 垂直条形图中的条形顶部 我一直在使用 attr rx 3 这似乎会影响 Bar 的所有四个角 您无法指定要在 SVG 中圆化哪些角 rx将影响所有 4 个角 唯一的解决
  • 从 URL Google 地图获取经纬度

    我需要一种方法来找出谷歌地图中提供其链接的地点的纬度 经度 或者 如果可能的话 我可以在地图上绘制应用程序内的点 或者使用某种意图共享谷歌地图的纬度经度 以便我可以从应用程序内接收它 上述任何一种可能是直接或间接的吗 简而言之 我有一个谷歌
  • iPhone 中的多人游戏 - 概念、策略、设计? [关闭]

    Closed 这个问题需要多问focused 目前不接受答案 我想为 iphone 开发一款在线多人游戏 我开发了两个 iPhone 应用程序 但它们不是游戏 所以这是我的第一个游戏 所以基本上我对在线多人游戏如何在iPhone上运行一无所
  • 计算数组逗号分隔值

    我正在使用此函数来获取 WordPress 中的自定义元字段数组 my var get meta values keywords if empty my var meta counts array foreach my var as met
  • 如何在私有和受保护访问修饰符之间进行选择以封装基类和子类之间的成员?

    我正在尝试一个在我的内部函数中使用私有值的项目 过去我只使用公共参数 但我注意到当使用尽可能多的私有参数时 混淆效果会更好 我的问题是关于家长 儿童课程 在我的主类中 我定义了所有参数如下 public class MyFatherClas
  • 无法在 Selenium 和 Java 中使用 className 定位元素

    我想使用 Selenium 中的类名来定位网页的元素 这是我尝试过的网络元素
  • PHP 中的 $_FILES 数组为空

    我正在尝试通过 PHP 脚本上传文件 但我的 FILES 数组始终为空 文件 HTML 输入元素的 POST 数据条目具有文件名 只是在我的本地系统上没有创建文件 我已验证对临时文件夹的写访问权限并明确设置它 我检查了 phpinfo 以确
  • 更改 Flutter AlertDialog 中操作部分的背景颜色

    我是 Flutter 新手 正在尝试自定义警报对话框材料飞镖的小部件 有多种方法可以设置整个对话框的背景颜色 有没有一种方法可以仅设置对话框的某些部分的背景颜色 从附图来看 对话框的操作部分的背景颜色应该不同 尝试下面的代码希望对您有帮助
  • 需要一种方法在 Python 中加载嵌入的、转义的 JSON 字符串[重复]

    这个问题在这里已经有答案了 我必须解析以下 JSON 字符串 JobDescription project 1322 vault qa 122 如果我尝试使用 json loads 我会得到以下信息 gt gt gt import json
  • 打印 syms / matlabFunction 慢

    我在尝试使符号替换速度更快时遇到了很多麻烦 也就是说 替换符号表达式中的变量并得到双精度值 我正在创建一个复杂的函数 f 并计算它的雅可比 df 这以合理的速度进行 我可以将其保存到文件中 但是 当我尝试使用 matlabFunction
  • 创建一个突出显示当前选项卡的 php 菜单

    所以我在 php 文件中有一个菜单 如下所示 这是整个文件 我对 PHP 完全陌生 菜单 php li a href span Home span a li li a href http blog me net span Blog span
  • 与 for 循环一起使用的 String join() 方法

    我需要你的帮助 因为我不明白为什么可以使用join 方法与for循环作为参数 Ex join str x for x in list Python 文档 str join iterable 返回一个字符串 它是可迭代中字符串的串联 A Ty
  • 使用 ProcessBuilder 运行 .java 文件

    我是一名在 Windows XP 上的 Eclipse 中工作的新手程序员 我需要运行多个进程 这将是多计算机系统的模拟 我最初的破解对多个类使用了多个线程 但现在我尝试用进程替换线程 从我的阅读中 我发现 ProcessBuilder 是
  • 内容可编辑光标位置

    我有一个内容可编辑的 div 我希望单击编辑按钮 光标出现在 div 的开头 在它出现在末尾的那一刻 li style display list item class menu item div class Dior div li