javascript - 等效于 PHP preg_match,javaScript 中的 substr

标签 javascript tinymce

我正在制作一个 tinyMce 插件,可以更改突出显示文本之间的单词/字母空间。我的 fn() 看起来像这样:

function wordsLettersSpace(words, letters) {
    var inst = tinyMCE.activeEditor;
    var currSelection = $.trim(inst.selection.getSel());

    if(currSelection != ""){
        var content = "";
        content = inst.selection.getContent({
            format: 'html'
        });

        contentReplace = '<span style="word-spacing: '+words+'px; letter-spacing: '+letters+'px;">' + inst.selection.getContent({
            format: 'html'
        }) + '</span>';

        inst.selection.setContent(content.replace(content, contentReplace));
        window.alert(content);
    }else{
        Hyphenator.hyphenate(inst.getBody(), language);
    }
    tinyMceUpdate();
}

现在我需要在选择开始位置(如果存在)之前找到最近的标签,并获取“word-spacing”和“letter-spacing”的样式值。此外,我需要摆脱选择的任何内部,但只有标签而不是文本,因为知道 span 标签可以有不同的样式,所以简单的 str.replace 将不起作用。

我知道有一个内置插件,但我需要在 tinyMce iframe 之外进行,并对其进行自定义。

有什么建议吗?

最佳答案

JS 正则表达式可用,并且可以使用 preg_match 做你想做的事。

https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Regular_Expressions

javascript 中的子字符串是str.substr(start, length)

关于javascript - 等效于 PHP preg_match,javaScript 中的 substr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15703963/

相关文章:

javascript - TinyMCE React 编辑器抛出 'Cannot set property ' onload' of null'

javascript - 使用 jQuery 选择 Div 的最后一个元素不起作用

javascript - 单击全屏 - Ext JS

javascript - 沿椭圆移动一点

javascript - Angular 和数据库访问 : Proper Practices

Javascript:需要解决方法:Internet Explorer 在更改 href 时更改链接文本

tinymce - Umbraco TinyMCE - 在插入/更新链接中不显示绝对 URL

javascript - 为什么文档选择器不适用于 mouseenter 事件?

php - 如何在最新版本的 codeigniter 中集成 tinymce

javascript - tinymce 例子中的 ed.onKeyDown