zoukankan      html  css  js  c++  java
  • 如何创建一个基于jquery的编辑器

    帮朋友做项目,其中涉及到编辑器问题。出于各种原因,最终决定自己编写编辑器。

    我的想法是,首先要基于jquery,其中有插入文字 ,图片的基本功能。根据需求。文字要求可以改变几种样式和位置。 图片要可以设置缩放和位置。

    再具体的需求我就不再这里写了。总体来看:我们要做的编辑器功能订制性强,功能单一。

    那么从哪里开始下手呢,我并没有任何头绪。于是决定首先逐步解决我想到要使用到,但我还不会的问题。

    Q1.编辑区域使用textarea么?

        并不了解textarea是否可以支持插入图片,于是简单查了下,发现html有这样一个属性:

    contenteditable="true"

    这样一来,我就可以再任何html元素中编辑了么?目前来看,是的。

    Q2.如何获得选中文字呢?

     查到了这样的代码:

    function getSelectedText() {    //this function code is borrowed from: http://www.codetoad.com/javascript_get_selected_text.asp
    
        var txt = "";
        if (window.getSelection) {
            txt = window.getSelection();
        } else if (window.document.getSelection) {
            txt = window.document.getSelection();
        } else if (window.document.selection) {
            txt = window.document.selection.createRange().text;
        }
        return txt;
    }

    这个函数会返回被选中的文字内容,测试成功。

    Q3:针对与Q1的可编辑,发现没有光标

      给可编辑区域设置css style

    cursor:text;

      发现可行。

    Q4:无意间发现console.log();方法, 调试的时候相比alert 它可以更好的打印出对象信息,于是借此研究了selection对象。

      

    console.log(window.getSelection());

    结果如下:

  • 相关阅读:
    CF767C Garland
    P2458 [SDOI2006]保安站岗
    P2704 [NOI2001]炮兵阵地
    P2607 [ZJOI2008]骑士
    POJ 1201 Interval (查分约束系统)
    位运算的魅力---N皇后问题
    设计模式之代理模式20170724
    C之Volatile关键字的介绍与使用20170724
    设计模式之桥梁模式20170721
    设计模式之策略模式20170720
  • 原文地址:https://www.cnblogs.com/bluen/p/3656300.html
Copyright © 2011-2022 走看看