<br/> is adding to single line text, after entering space for the first time in firefox
Unfortunately this is not related to grapesjs itself but how Firefox handles editable text. I guess one option would be to switch to some custom rich text editor which doesn't rely on the native behaviour.
Read full answer below βQuestion
GrapesJS version
- I confirm to use the latest version of GrapesJS
What browser are you using?
Firefox
Reproducible demo link
https://jsfiddle.net/8rm5wv2y/1/
Describe the bug
How to reproduce the bug?
- open example page in firefox (it has no modification)
- click show code, you will see that there is no
<br/>element inserted - press space after "Hello World!!!" if you want you can add any text
- click show code again, you will see that after your new added text you will have
<br/>element added
What is the expected behavior?
If the user is not pressing enter or shift+enter, but writing on single line I would like to not to get <br/> element. Like in the chrome.
What is the current behavior?
when ever user is adding text to existing text, grapes is adding <br/> element in firefox.
Code of Conduct
- I agree to follow this project's Code of Conduct
Answers (3)
Unfortunately this is not related to grapesjs itself but how Firefox handles editable text. I guess one option would be to switch to some custom rich text editor which doesn't rely on the native behaviour.
Thank you for your answer π
Thanks for reporting this, @edenizk.
Great question about <br/> is adding to single line text, after entering space for the first time in firefox. The recommended approach with ProseMirror is to use the event-driven API.
Start here:
- Check the GrapesJS documentation for your specific module
- Look for the
on()event listener method - Most operations can be achieved by listening to editor and component events
Common patterns:
// Listen for changes
editor.on('change', () => console.log('something changed'));
// Component lifecycle
editor.on('component:mount', (c) => console.log('component ready', c));
editor.on('component:update', (c) => console.log('component updated', c));
If you're still stuck:
- Share a minimal CodeSandbox reproduction
- Include what you've already tried
- Mention your GrapesJS version
- The community is here to help!
Related Questions and Answers
Continue research with similar issue discussions.
Issue #4001
Can not hold current unit when the first time input have Auto value
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? 96.0.4664.93 Reproducible demo link https:...
Issue #5199
Changes in component's attributes being reproduced in all the instances instead of just one
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v114 Reproducible demo link https:/...
Issue #6458
sector.setName doesn't work
GrapesJS version [x] I confirm to use the latest version of GrapesJS What browser are you using? Chrome Reproducible demo link https://jsfi...
Issue #5705
Component tools misalign when the editor is resized
GrapesJS version [X] I confirm to use the latest version of GrapesJS What browser are you using? Chrome v122 Reproducible demo link https:/...
Paid Plugins That Match This Issue
Curated by issue keywords and label relevance to help you ship faster.
Loading paid plugin recommendations...
Check the open-source GrapesJS plugins on GitHub or run a quick search in our free catalog.
Browse free plugins βPremium plugins ship with support, regular updates, and production-ready features β save days of integration work.
Browse premium plugins βRelated tutorials
In-depth guides on the same topic.
Tutorial
How to Build a Production GrapesJS Editor: The Complete Walkthrough of Brief, Preset, Plugins, and Services
A complete walkthrough of building a production GrapesJS editor: how to choose a preset, pick plugins, and scope setup services without burning a sprint.
Tutorial
Big Updates: TinyMCE 8 and Placeholder 2.0 for GrapesJS
In May we shipped major updates to two of our most popular GrapesJS plugins β TinyMCE Inline Text Editor and Placeholder.
Tutorial
Find the Right GrapesJS Plugin in Seconds: Smarter Discovery Is Live
We're shipping a set of discovery upgrades. New label filters, a proper compatibility switch for GrapesJS vs Studio, one-click and a smarter sort bar.
Browse Plugin Categories
Jump directly to plugin category pages on the marketplace.