TinyMCE Smileys插件 - 更改插入笑脸的宽度

时间:2016-04-17 12:14:35

标签: javascript css tinymce

我使用this plugin作为TinyMCE所见即所得的编辑。

添加的表情符号是72x72像素,但我希望它们显示为20x20像素。

当您从列表中单击笑脸时,它会在编辑器主体内创建一个元素,如下所示:

<img title="smile" src="https://twemoji.maxcdn.com/2/72x72/1f600.png" data-mce-src="https://twemoji.maxcdn.com/2/72x72/1f618.png">

如何在创建元素时向其添加style="width:20px"

我的TinyMCE init是:

  tinymce.init({
    selector: '.main-textarea',
    height: 300,
    menubar: "insert format",
    plugins: [
      'advlist lists link image charmap print preview hr anchor pagebreak',
      'searchreplace wordcount visualblocks visualchars code fullscreen',
      'insertdatetime media nonbreaking save table contextmenu directionality',
      'smileys template paste textcolor colorpicker textpattern imagetools'
    ],
    toolbar1: 'styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image media',
    toolbar2: 'forecolor smileys',
    smileys:[
     [
         { shortcut: ':)', url: 'https://twemoji.maxcdn.com/2/72x72/1f600.png', title: 'smile' },
         { shortcut: ':\')', url: 'https://twemoji.maxcdn.com/2/72x72/1f602.png', title: 'cwl' },
         { shortcut: ':*', url: 'https://twemoji.maxcdn.com/2/72x72/1f618.png', title: 'blowkiss' }
     ]
    ],
    auto_convert_smileys: true,
    image_advtab: true,
    content_css : "https://fonts.googleapis.com/css?family=Open+Sans:400,600"
   });

我已尝试查看插件源代码以添加样式,但我没有对我有用。

2 个答案:

答案 0 :(得分:0)

能够解决它。我对源头进行了解释,并在底部有这样的:

n.addButton("smileys", {
    type: "panelbutton",
    icon: "emoticons",
    panel: {
        autohide: !0,
        html: e,
        onclick: function(t) {
            var i = n.dom.getParent(t.target, "a");
            i && (n.insertContent('<img src="' + i.getAttribute("data-mce-url") + '" title="' + i.getAttribute("title") + '" class="emoji" style="width:20px">'), this.hide())
        }
    },
    tooltip: "Smileys"
})

我添加了class="emoji" style="width:20px"

n.insertContent('<img src="' + i.getAttribute("data-mce-url") + '" title="' + i.getAttribute("title") + '" class="emoji" style="width:20px">')

答案 1 :(得分:0)

您可以添加与img标题匹配的CSS类:

img[title=smile] {
    width: 20px;
}

另一种解决方案是使用尺寸为20 x 20的图像。