Basic Online WYSIWYG Editor With jQuery - TextEditor
| File Size: | 8.23 KB |
|---|---|
| Views Total: | 3180 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
This is a simple, convenience WYSIWYG text editor built using jQuery, Font Awesome, Bootstrap 4 and SweetAlert.
Features:
- JSON export/import.
- Undo/redo.
- Cut, copy and paste.
- Bold, italic, and underline.
- Alignment.
- Table generator.
- Image upload.
- Custom editor buttons.
How to use it:
1. Include the necessary JavaScript and CSS files (jQuery, Font Awesome, Bootstrap 4 and SweetAlert) in the document.
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/css/bootstrap.min.css" integrity="sha384-/Y6pD6FV/Vv2HJnA6t+vslU6fwYXjCFtcEpHbNJ0lyAFsXTsjBbfaDjzALeQsN6M" crossorigin="anonymous"> <link rel="stylesheet" href="https://netdna.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css"> <script src="https://code.jquery.com/jquery-3.2.1.slim.min.js" integrity="sha384-KJ3o2DKtIkvYIK3UENzmM7KCkRr/rE9/Qpg6aAZGJwFDMVNA/GpGFF93hXpG5KkN" crossorigin="anonymous"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.11.0/umd/popper.min.js" integrity="sha384-b/U6ypiBEHpOf/4+1nzFpr53nxSS+GLCkfwBdFNTxtclqqenISfwAzpKaMNFNmj4" crossorigin="anonymous"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0-beta/js/bootstrap.min.js" integrity="sha384-h0AbiXch4ZDo7tp9hKZ4TsHbi047NrKGLO3SEJAg45jXxnGIfYzk4Si90RDIqNm1" crossorigin="anonymous"></script> <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script>
2. Include the jQuery TextEditor plugin's files in the document.
<link rel="stylesheet" href="css/style.css"> <script src="js/additionControl.js"></script> <script src="js/JsonLoader.js"></script> <script src="js/RangeControl.js"></script> <script src="js/Clipboard.js"></script> <script src="js/pictureLoader.js"></script> <script src="js/editor.js"></script>
3. Create the html for the text editor.
<div class="container" id="container">
<div id="controlls">
<nav class="navbar-expand-lg navbar-light">
<div class="nav-item dropdown"> <a href="#" id="menuFile" class="nav-link dropdown-toggle" data-toggle="dropdown">File</a>
<ul class="dropdown-menu">
<a class="dropdown-item" href="#" id="importFile">import</a> <a class="dropdown-item" href="#" id="exportFile">export</a> <a class="dropdown-item" href="#" id="print">print</a>
</ul>
</div>
<div class="nav-item dropdown"> <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">Edit</a>
<ul class="dropdown-menu">
<a class="dropdown-item" href="#" id="undo"><i class="fa fa-reply"></i> Undo <span class="key-comb">Ctrl+Z</span></a> <a class="dropdown-item" href="#" id="redo"><i class="fa fa-share"></i> Redo <span class="key-comb">Ctrl+Y</span></a>
<div class="dropdown-divider"></div>
<a class="dropdown-item" href="#" id="cut"><i class="fa fa-scissors"></i> Cut <span class="key-comb">Ctrl+X</span></a> <a class="dropdown-item" href="#" id="copy"><i class="fa fa-files-o"></i> Copy <span class="key-comb">Ctrl+C</span></a> <a class="dropdown-item" href="#" id="paste"><i class="fa fa-clipboard"></i> Paste <span class="key-comb">Ctrl+V</span></a> <a class="dropdown-item" href="#" id="pasteAsText"> Paste as text</a>
</ul>
</div>
</nav>
<nav class="panel-btns">
<button type="button" class="btn btn-outline-dark" id="undo"><i class="fa fa-reply"></i></button>
<button type="button" class="btn btn-outline-dark" id="redo"><i class="fa fa-share"></i></button>
<button type="button" class="btn btn-outline-dark" id="bold"><i class="fa fa-bold"></i></button>
<button type="button" class="btn btn-outline-dark" id="italic"><i class="fa fa-italic"></i></button>
<button type="button" class="btn btn-outline-dark" id="underline"><i class="fa fa-underline"></i></button>
<div class="nav-item dropdown">
<button type="button" class="btn btn-outline-dark dropdown-toggle" data-toggle="dropdown"><i class="fa fa-align-left"></i> <i class="fa fa-caret-down"></i></button>
<ul class="dropdown-menu">
<a class="dropdown-item" href="#" id="justifyLeft"><i class="fa fa-align-left"></i> Align Left</a> <a class="dropdown-item" href="#" id="justifyCenter"><i class="fa fa-align-center"></i> Align Center</a> <a class="dropdown-item" href="#" id="justifyRight"><i class="fa fa-align-right"></i> Align Right</a>
</ul>
</div>
<button type="button" class="btn btn-outline-dark" id="table"><i class="fa fa-table"></i></button>
<div class="modal" tabindex="-1" role="dialog" id="modalForTable">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Create A Table</h5>
</div>
<div class="modal-body">
<div>Rows:
<input type="number" id="lines">
</div>
<div>Columns:
<input type="number" id="columns">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="btnAddTable">Create</button>
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
<button type="button" class="btn btn-outline-dark" id="picture"><i class="fa fa-picture-o"></i></button>
<div class="modal" tabindex="-1" role="dialog" id="modalForPicture">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Select An Image</h5>
</div>
<div class="modal-body">
<input type="file" id="insImage" accept="image/*" >
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
<button type="button" class="btn btn-outline-dark" id="additionControl"><i class="fa fa-plus"></i></button>
<div class="modal" tabindex="-1" role="dialog" id="modalForAddCtrl">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Create A New Button</h5>
</div>
<div class="modal-body">
<div >Icon Name:
<input type="text" id="iconCtrl" class="form-control" value="hand-peace-o">
</div>
<div>Function:
<input type="text" id="actionCtrl" class="form-control" value="alert('Hi');">
</div>
<div>Description:
<input type="text" id="titleCtrl" class="form-control" value="say 'hi'">
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-primary" id="btnAddCtrl">Create</button>
<button type="button" class="btn btn-secondary" data-dismiss="modal">Cancel</button>
</div>
</div>
</div>
</div>
</nav>
</div>
<div id="editor" class="editor" contenteditable="true">
<div><br>
</div>
</div>
<input type="file" id="loadFile" accept="application/json" style="display: none">
</div>
This awesome jQuery plugin is developed by BoldyrevDA. For more Advanced Usages, please check the demo page or visit the official website.











