admin管理员组

文章数量:1424993

I created a rich content editor based on execCommand and queryCommandState whose are now obsolete. I'm looking for a substitute to these mands, especially for

document.queryCommandState('bold')

I think the following is a good start:

window.getSelection().getRangeAt(0);

I get the current selection, but I can't figure out if the selection is in bold <b> or not.

I created a rich content editor based on execCommand and queryCommandState whose are now obsolete. I'm looking for a substitute to these mands, especially for

document.queryCommandState('bold')

I think the following is a good start:

window.getSelection().getRangeAt(0);

I get the current selection, but I can't figure out if the selection is in bold <b> or not.

Share Improve this question edited Aug 15, 2020 at 10:57 Progman 19.7k7 gold badges55 silver badges82 bronze badges asked Mar 23, 2020 at 9:00 FifiFifi 3,6253 gold badges31 silver badges62 bronze badges
Add a ment  | 

2 Answers 2

Reset to default 4

It can be done with window.getSelection()

JSFiddle: https://jsfiddle/Imabot/s54zoxk2/

Explanations: https://lucidar.me/en/rich-content-editor/lightweight-rich-content-editor-part-2-check-if-bold/

Hope this will help others...

You could get all puted styles of the node and then check the value of your propertie.

function getComputedStyles(currentNode) {
    if(currentNode.id != maxTreeNodeId) {
        try {
            var styles = window.getComputedStyle(currentNode);
            console.log(styles.fontWeight); // Print font weight, 700 = bold
        } catch(err) {
            this.getComputedStyles(currentNode.parentNode);
        }
    }
}

本文标签: javascriptAlternativesubstitute for queryCommandState(39bold39)Stack Overflow