如何将样式属性添加到使用 getDoc().createElement( "img" ) 添加的图像;在 TinyMCE 中

How to add style attribute to an image added with getDoc().createElement( "img" ); in TinyMCE

How To insert an image at cursor position in tinymce

根据上面提到的问题,我设法在 TinyMCE 中添加了一个图像。

var ed = tinyMCE.get('txt_area_id');                // get editor instance
var range = ed.selection.getRng();                  // get range
var newNode = ed.getDoc().createElement ( "img" );  // create img node
newNode.src="sample.jpg";                           // add src attribute
range.insertNode(newNode);                          // insert Node

我正在尝试使用以下代码将宽度添加到 newNode

 newNode.style = "width:600px;"; // not working

但它不起作用,class 也是如此 我无法通过此代码添加 class:

newNode.class= "myClass"; // this one is also not working

如果有人有什么想法请告诉我,谢谢。

问题出在这里:

newNode.style = "width:600px;";

您正在访问节点的样式对象,而不是样式属性。因此,您可以更新或设置样式对象:

newNode.style.width = "600px;";

或更新或设置样式属性:

newNode.setAttribute("style", "width:600px");

请注意,在后一个示例中,样式属性中保存的任何现有值都将被新字符串覆盖;要仅更新一个 属性 值,您应该使用前一个示例,并针对样式对象的特定属性。

要更新元素的 类:

newNode.className = "newClassName";

或:

newNode.classList.add("newClassName");