如何在具有特定类的div中创建一个包含所选文本的按钮?

时间:2014-08-07 23:19:23

标签: javascript jquery nicedit

我在我网站管理面板的textarea中使用nicedit。现在我想添加一个自定义按钮,它将使用class = info将所选文本换行到div中。 我使用了nicedit wiki中的信息。到目前为止,这是我的js文件代码:

/**
* nicInfodiv
* @description: Adds blue square wrapper to text
* @requires: nicCore, nicPane, nicAdvancedButton
* @author: Brian Kirchoff
* @version: 0.9.0
*/

/* START CONFIG */
var nicInfodivOptions = {
    buttons : {
        'infodiv' : {name : __('Some alt text for the button'), type : 'nicEditorInfodiv'}
    }/* NICEDIT_REMOVE_START */,iconFiles : {'infodiv' : '/js/nicInfodiv/icons/div.gif'}/* NICEDIT_REMOVE_END */
};
/* END CONFIG */

var nicEditorInfodiv = nicEditorButton.extend({   
  mouseClick : function() {
   //WHAT SHOULD I WRITE HERE????
  }
});

nicEditors.registerPlugin(nicPlugin,nicInfodivOptions);

我无法在任何地方找到帮助。任何人都可以给我适当的代码来写入mouseclick事件,以便它将div class = info包装器添加到所选的文本? 有人能帮帮我吗?

1 个答案:

答案 0 :(得分:0)

您可以使用.wrap()

$(this).wrap('<div class="info"></div>');

每次单击元素时,这将在元素周围创建一个新的包装器div。如果您允许多次单击它,您可能希望在创建元素时创建一次包装器div,然后稍后将info类添加到父div。

$(this).parent().addClass('info');