1. ホーム
  2. Web プログラミング
  3. ウェブ編集者

Baiduのエディタueditorコンテンツエディタが自動的にPタグ、およびPタグの置換を設定する

2022-01-04 14:48:51

写真のように、赤枠がエンターキー、シフト+リターンキーです

   ===>> 

をueditor.all.jsに追加しました。

1:

検索をfalseに変更: allowDivTransToP: false
再度検索し、以下を修正します。

// the editor cannot be empty content

if (domUtils.isEmptyNode(me.body)) {
me.body.innerHTML = '<div>' + (browser.ie ? '' : '<br/>') + '</div>';
}


2:

//apply p tags to text or inline nodes
      if (me.options.enterTag == 'p') {

        var child = this.body.firstChild, tmpNode;
        if (!child || child.nodeType == 1 &&
          (dtd.$cdata[child.tagName] || isCdataDiv(child) ||
            domUtils.isCustomeNode(child)
            )
          && child === this.body.lastChild) {
          this.body.innerHTML = '<div>' + (browser.ie ? '&nbsp;' : '<br/>') + '</div>' + this.body.innerHTML;

        } else {
          var p = me.document.createElement('div');
          while (child) {
            while (child && (child.nodeType == 3 || child.nodeType == 1 && dtd.p[child.tagName] && !dtd.$cdata[child.tagName])) {
              tmpNode = child.nextSibling;
              p.appendChild(child);
              child = tmpNode;
            }
            if (p.firstChild) {
              if (!child) {
                me.body.appendChild(p);
                break;
              } else {
                child.parentNode.insertBefore(p, child);
                p = me.document.createElement('div');
              }
            }
            child = child.nextSibling;
          }
        }
      }

上記は数カ所、pをdivに変えて似たような感じになっています

3.

上のコードボックスで if (me.options.enterTag == 'p') このPは次のスイッチにしたがって進みます。
EnterTag: 'p',//キャリッジリターン改行のためにbrを追加するように変更し、改行のためにdivを追加するように変更しない。
4.

Pタグを設定するためにエディタに// liは、私はPを設定する必要はありませんが、それをコメントアウトする

//Insert the editor's li with a p tag
  /* Start commenting out me.addInputRule(function(root){
    utils.each(root.getNodesByTagName('li'),function(li){
      var tmpP = UE.uNode.createElement('p');
      for(var i= 0,ci;ci=li.children[i];){
        if(ci.type == 'text' || dtd.p[ci.tagName]){

5:以下が見つかり、コメントする

//comment out, this is automatically adding a built-in style to ul, as in <ul class=" list-paddingleft-2">
node.className = utils.trim(node.className.replace(/list-paddingleft-\w+/,'')) + ' list-paddingleft-' + type;

// comment out this next line down, this is automatically removing the style style of li from the code pasted in, why clear my style?
li.style.cssText && (li.style.cssText = '');

そして、これで終わりです。