5
votes

My JS:

$(document).ready(function() {
  tinymce.init({
    selector: 'textarea',
    height: 500,
    menubar: false,
    plugins: [
      'advlist autolink lists link image charmap print preview anchor',
      'searchreplace visualblocks code fullscreen',
      'insertdatetime media table contextmenu paste code'
    ],
    toolbar: 'undo redo | insert | styleselect | bold italic | alignleft aligncenter alignright alignjustify |  bullist numlist outdent indent | link image',
    content_css: '//www.tinymce.com/css/codepen.min.css'
  });
});

My HTML:

<textarea></textarea>

I have the following external JS files included:

http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js http://cdnjs.cloudflare.com/ajax/libs/tinymce/4.5.6/jquery.tinymce.min.js

The JS fiddle:

http://jsfiddle.net/bcv1tv1b/

My error:

Uncaught ReferenceError: tinymce is not defined
    at HTMLDocument.<anonymous> ((index):54)
    at j (jquery.min.js:2)
    at Object.add [as done] (jquery.min.js:2)
    at m.fn.init.m.fn.ready (jquery.min.js:2)
    at window.onload ((index):53

I'm running Google Chrome 57.0.2987.133 and the TinyMCE code is from https://www.tinymce.com/docs/demo/basic-example/ .

Any ideas?

5

5 Answers

15
votes

You need to also load TinyMCE itself - all you are loading now is a jQuery wrapper for TinyMCE.

In total you need to load the following:

<script src="https://cdnjs.cloudflare.com/ajax/libs/tinymce/4.5.6/tinymce.min.js"></script>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="http://cdnjs.cloudflare.com/ajax/libs/tinymce/4.5.6/jquery.tinymce.min.js"></script>

See this updated fiddle: http://jsfiddle.net/mfromin/bcv1tv1b/2/

In all honesty you don't even need the jQuery TinyMCE code unless you want to use TinyMCE as a jQuery Plugin. Its 100% not required to make your fiddle work.

1
votes

Had this error with WordPress, Chrome developer tool pointed me to the error. So I checked my files, /wp-includes/js/tinymce/wp-tinymce.php, The folder itself was on full throttle permission, changed to 755 and my visual editor is working now, console error disappeared.

1
votes

Check to see if you have some .htaccess files inside your wp-includes folder! I was having this issue and it seems that it was caused by a .htaccess file in the root of wp-includes!

1
votes

Make sure the asset is loaded before initialization.

0
votes

if you are using jquery version of TinyMCE you should use like this:

 $("textarea.tinymce").tinymce({
   //tinyMCE Settings here
 })